CI Pipeline #60
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI Pipeline | |
on: | |
workflow_dispatch: | |
inputs: | |
pr_id: | |
description: 'Pull Request ID' | |
required: true | |
default: '55766' | |
env: | |
AWS_DEFAULT_REGION: us-east-1 | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
MYSQL_ROOT_PASSWORD: root | |
jobs: | |
build-and-test: | |
runs-on: ubuntu-latest | |
if: github.actor == 'pablo-code-org' | |
steps: | |
- name: Get Branch Name from Pull Request ID | |
id: get_branch | |
run: | | |
PR_ID=${{ github.event.inputs.pr_id }} | |
PR_DATA=$(curl -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ | |
https://api.github.com/repos/code-dot-org/code-dot-org/pulls/$PR_ID) | |
BRANCH_NAME=$(echo $PR_DATA | jq -r .head.ref) | |
echo "Branch Name: $BRANCH_NAME" | |
echo "BRANCH_NAME=$BRANCH_NAME" >> $GITHUB_ENV | |
- name: Checkout Repository at Branch | |
uses: actions/checkout@v2 | |
with: | |
ref: ${{ steps.get_branch.outputs.branch_name }} | |
path: code-dot-org | |
repository: code-dot-org/code-dot-org | |
token: ${{ secrets.GITHUB_TOKEN }} | |
fetch-depth: 0 | |
- name: Prepare entrypoint script | |
run: cp ./code-dot-org/docker/dockerfiles/entrypoint.sh ./code-dot-org/ | |
- name: Set up Docker Environment | |
run: docker build -t code-dot-org-testing-docker-image -f ./code-dot-org/docker/dockerfiles/Dockerfile ./code-dot-org | |
- name: Aggressive Debugging of Docker Container | |
run: | | |
echo "Debugging Root Directory" | |
docker run code-dot-org-testing-docker-image /bin/bash -c "ls -la /" | |
echo "Debugging Home Directory" | |
docker run code-dot-org-testing-docker-image /bin/bash -c "ls -la /home" | |
echo "Debugging Code-dot-org Directory" | |
docker run code-dot-org-testing-docker-image /bin/bash -c "ls -la /home/code-dot-org" | |
echo "Debugging Docker Directory" | |
docker run code-dot-org-testing-docker-image /bin/bash -c "ls -la /home/code-dot-org/docker" | |
echo "Debugging Docker Files Directory" | |
docker run code-dot-org-testing-docker-image /bin/bash -c "ls -la /home/code-dot-org/docker/dockerfiles" | |
echo "Searching for ui_tests.sh in Entire Filesystem" | |
docker run code-dot-org-testing-docker-image /bin/bash -c "find / -type f -name 'ui_tests.sh' 2>/dev/null" | |
echo "Displaying Environment Variables" | |
docker run code-dot-org-testing-docker-image /bin/bash -c "printenv" | |
- name: Update Cache | |
uses: actions/cache@v2 | |
with: | |
path: ~/.npm | |
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }} |