diff --git a/.github/workflows/cd-frontend.yml b/.github/workflows/cd-frontend.yml new file mode 100644 index 000000000..cc008ff08 --- /dev/null +++ b/.github/workflows/cd-frontend.yml @@ -0,0 +1,37 @@ +name: frontend-deploy + +on: + push: + branches: + - develop-frontend + +jobs: + deploy: + runs-on: self-hosted + + steps: + - name: Log in to Dockerhub + uses: docker/login-action@v2 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: allow ubuntu to access actions-runner + run: | + sudo chown -R ubuntu:ubuntu ~/actions-runner + + - name: grant permission to docker-compose + run: | + sudo chmod +x ./frontend/docker-compose-fe.yml + + - name: docker compose down + run: | + docker compose -f ./frontend/docker-compose-fe.yml down + + - name: docker compose pull + run: | + docker compose -f ~/frontend/docker-compose-fe.yml pull + + - name: docker compose up + run: | + docker compose -f ~/frontend/docker-compose-fe.yml up -d \ No newline at end of file diff --git a/.github/workflows/ci-frontend.yml b/.github/workflows/ci-frontend.yml new file mode 100644 index 000000000..889179d56 --- /dev/null +++ b/.github/workflows/ci-frontend.yml @@ -0,0 +1,49 @@ +name: frontend-integration + +on: + pull_request: + branches: + - develop-frontend + +jobs: + build: + runs-on: ubuntu-latest + + defaults: + run: + shell: bash + working-directory: ./frontend + + steps: + - name: Checkout code + uses: actions/checkout@v4 + with: + ref: develop-frontend + + - name: Set up Node.js + uses: actions/setup-node@v3 + with: + node-version: '20.15.0' + + - name: Create .env file + run: | + echo "BASE_URL=${{ secrets.BASE_URL }}" > .env + + - name: Install Dependencies + run: npm install --frozen-lockfile + + - name: Build static file + run: npm run build + + - name: Build Docker image + run: | + docker buildx build ./ --platform=linux/arm64 -t ${{ secrets.DOCKER_USERNAME }}/mouda-fe:latest + + - name: Log in to DockerHub + uses: docker/login-action@v2 + with: + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + + - name: Push Docker image to DockerHub + run: docker push ${{ secrets.DOCKER_USERNAME }}/mouda-fe:latest \ No newline at end of file