Skip to content

Commit

Permalink
chore(ci): Update CI workflow configuration for shell command execution
Browse files Browse the repository at this point in the history
  • Loading branch information
wajeht committed Sep 3, 2024
1 parent 6d191b8 commit da0f15e
Showing 1 changed file with 105 additions and 99 deletions.
204 changes: 105 additions & 99 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,9 @@ jobs:
- name: Create .env file from .env.ci
run: cp .env.ci .env

- name: shell
run: ls -la

- name: Install dependencies
run: npm i

Expand Down Expand Up @@ -104,6 +107,9 @@ jobs:
- name: Create .env file from .env.ci
run: cp .env.ci .env

- name: shell
run: ls -la

- name: Install dependencies
run: npm ci

Expand All @@ -123,102 +129,102 @@ jobs:
path: playwright-report/
retention-days: 30

lint:
name: ESLint
runs-on: ubuntu-latest

strategy:
matrix:
node-version: [22.x]

steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'

- name: Install dependencies
run: npm i

- name: Lint codes
run: npm run lint

format:
needs: [lint, unit-test, browser-test]
name: Prettier format
runs-on: ubuntu-latest

permissions:
contents: write

strategy:
matrix:
node-version: [22.x]

steps:
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: 'npm'

- name: Install dependencies
run: npm i

- name: Format codes
run: npm run format

- name: Commit changes
uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: 'style: format codes'
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

deploy:
needs: [unit-test, browser-test, lint, format]
name: Deploy to Production
runs-on: ubuntu-latest
if: github.event_name == 'push' && github.ref == 'refs/heads/main'

environment:
name: production
url: https://notify.jaw.dev/

steps:
- name: Check out repository
uses: actions/checkout@v4

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2

- name: Login to Container Registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GH_TOKEN }}

- name: Preset Image Name
run: echo "IMAGE_URL=$(echo ghcr.io/${{ github.repository_owner }}/${{ github.event.repository.name }}:$(echo ${{ github.sha }} | cut -c1-7) | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV

- name: Build and push Docker Image
uses: docker/build-push-action@v4
with:
context: .
file: ./Dockerfile.prod
push: true
tags: ${{ env.IMAGE_URL }}
cache-from: type=gha
cache-to: type=gha,mode=max

- name: Deploy Image to Server
uses: caprover/[email protected]
with:
server: '${{ secrets.CAPROVER_SERVER }}'
app: '${{ secrets.APP_NAME }}'
token: '${{ secrets.APP_TOKEN }}'
image: ${{ env.IMAGE_URL }}
# lint:
# name: ESLint
# runs-on: ubuntu-latest

# strategy:
# matrix:
# node-version: [22.x]

# steps:
# - uses: actions/checkout@v4
# - name: Use Node.js ${{ matrix.node-version }}
# uses: actions/setup-node@v4
# with:
# node-version: ${{ matrix.node-version }}
# cache: 'npm'

# - name: Install dependencies
# run: npm i

# - name: Lint codes
# run: npm run lint

# format:
# needs: [lint, unit-test, browser-test]
# name: Prettier format
# runs-on: ubuntu-latest

# permissions:
# contents: write

# strategy:
# matrix:
# node-version: [22.x]

# steps:
# - uses: actions/checkout@v4
# - name: Use Node.js ${{ matrix.node-version }}
# uses: actions/setup-node@v4
# with:
# node-version: ${{ matrix.node-version }}
# cache: 'npm'

# - name: Install dependencies
# run: npm i

# - name: Format codes
# run: npm run format

# - name: Commit changes
# uses: stefanzweifel/git-auto-commit-action@v4
# with:
# commit_message: 'style: format codes'
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

# deploy:
# needs: [unit-test, browser-test, lint, format]
# name: Deploy to Production
# runs-on: ubuntu-latest
# if: github.event_name == 'push' && github.ref == 'refs/heads/main'

# environment:
# name: production
# url: https://notify.jaw.dev/

# steps:
# - name: Check out repository
# uses: actions/checkout@v4

# - name: Set up Docker Buildx
# uses: docker/setup-buildx-action@v2

# - name: Login to Container Registry
# uses: docker/login-action@v2
# with:
# registry: ghcr.io
# username: ${{ github.repository_owner }}
# password: ${{ secrets.GH_TOKEN }}

# - name: Preset Image Name
# run: echo "IMAGE_URL=$(echo ghcr.io/${{ github.repository_owner }}/${{ github.event.repository.name }}:$(echo ${{ github.sha }} | cut -c1-7) | tr '[:upper:]' '[:lower:]')" >> $GITHUB_ENV

# - name: Build and push Docker Image
# uses: docker/build-push-action@v4
# with:
# context: .
# file: ./Dockerfile.prod
# push: true
# tags: ${{ env.IMAGE_URL }}
# cache-from: type=gha
# cache-to: type=gha,mode=max

# - name: Deploy Image to Server
# uses: caprover/[email protected]
# with:
# server: '${{ secrets.CAPROVER_SERVER }}'
# app: '${{ secrets.APP_NAME }}'
# token: '${{ secrets.APP_TOKEN }}'
# image: ${{ env.IMAGE_URL }}

0 comments on commit da0f15e

Please sign in to comment.