Skip to content

Commit

Permalink
Merge pull request #327 from sparcs-kaist/hotfix/add-github-actions-ci
Browse files Browse the repository at this point in the history
Hotfix/add GitHub actions ci
  • Loading branch information
jessyoon14 authored May 23, 2022
2 parents 736581d + 5e7be90 commit 03806de
Show file tree
Hide file tree
Showing 3 changed files with 93 additions and 32 deletions.
32 changes: 0 additions & 32 deletions .docker/codebuild.sh

This file was deleted.

31 changes: 31 additions & 0 deletions .github/workflows/generate-docker-tag.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
#!/bin/bash


# GITHUB_REF: refs/heads/<branch_name>, refs/tags/<tag_name>
if [ ! -z $GITHUB_REF ]; then
TRIGGER_TYPE=$(echo $GITHUB_REF | cut -d '/' -f2)
NAME=$(echo $GITHUB_REF | cut -d '/' -f3)

echo $GITHUB_REF
if [ $TRIGGER_TYPE = "heads" ]; then
export PUSH=true
if [ $NAME = "master" ]; then
export DOCKER_TAG=prod
export CACHE_DOCKER_TAG=prod
elif [ $NAME = "develop" ]; then
# Docker tag에 /가 들어갈 수 없어서 -로 변경
export DOCKER_TAG=develop
export CACHE_DOCKER_TAG=develop
fi
elif [ $TRIGGER_TYPE = "tags" ]; then
export PUSH=true
export DOCKER_TAG=$NAME
export CACHE_DOCKER_TAG=prod
elif [ $TRIGGER_TYPE = "pull" ]; then
export PUSH=true
export DOCKER_TAG="pr$NAME"
export CACHE_DOCKER_TAG=develop
fi
fi

echo $PUSH $TRIGGER_TYPE $CACHE_DOCKER_TAG $DOCKER_TAG
62 changes: 62 additions & 0 deletions .github/workflows/github-actions.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: Run tests for new-ara-api
on:
workflow_dispatch:
push:
branches:
- master
- develop
pull_request:
release:
types: [created]
env:
ECR: 666583083672.dkr.ecr.ap-northeast-2.amazonaws.com
PROJECT_NAME: newara
SECRET_KEY: ${{ secrets.SECRET_KEY }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
SSO_CLIENT_ID: ${{ secrets.SSO_CLIENT_ID }}
SSO_SECRET_KEY: ${{ secrets.SSO_SECRET_KEY }}
PORTAL_2FA_KEY: ${{ secrets.PORTAL_2FA_KEY }}
AWS_REGION: ap-northeast-2

jobs:
deploy:
name: Run Tests
runs-on: ubuntu-18.04
steps:
- name: Checkout
uses: actions/checkout@v2

- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{env.AWS_REGION}}

- name: Login to Amazon ECR
id: login-ecr
uses: aws-actions/amazon-ecr-login@v1

- name: Install
run: |
chmod +x .github/workflows/generate-docker-tag.sh
. .github/workflows/generate-docker-tag.sh
echo "PUSH=$PUSH" >> $GITHUB_ENV
echo "DOCKER_TAG=$DOCKER_TAG" >> $GITHUB_ENV
echo "CACHE_DOCKER_TAG=$CACHE_DOCKER_TAG" >> $GITHUB_ENV
docker pull $ECR/$PROJECT_NAME:$CACHE_DOCKER_TAG || true
- name: Build
run: |
docker build --build-arg AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID --build-arg AWS_SECRET_ACCESS_KEY=$(echo $AWS_SECRET_ACCESS_KEY) --cache-from $ECR/$PROJECT_NAME:$CACHE_DOCKER_TAG -t $PROJECT_NAME .
- name: Run test
run: |
docker-compose -f docker-compose.test.yml run api test
docker-compose -f docker-compose.test.yml down
- if: env.PUSH == 'true'
name: Push docker image
run: |
echo "Start docker image push"
docker tag $PROJECT_NAME $ECR/$PROJECT_NAME:$DOCKER_TAG && docker push $ECR/$PROJECT_NAME:$DOCKER_TAG
echo "Finish docker image push"

0 comments on commit 03806de

Please sign in to comment.