name: CI for GGS-CRON on: push: branches: - master tags: - 'v*' - 'release-*' jobs: # build-and-test: # runs-on: docker # container: # image: node:20-slim # steps: # - name: Checkout code # uses: actions/checkout@v4 # - name: Set up timezone # run: | # apt-get update && apt-get install -y tzdata # ln -snf /usr/share/zoneinfo/Asia/Bangkok /etc/localtime # echo "Asia/Bangkok" > /etc/timezone # rm -rf /var/lib/apt/lists/* # - name: Cache npm dependencies # uses: actions/cache@v3 # with: # path: ~/.npm # key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} # restore-keys: | # ${{ runner.os }}-node- # - name: Install dependencies # run: npm install # - name: Show heartbeat.js version and changelogs # run: | # awk '/const heartbeatApiInfo = {/,/};/' plugins/heartbeat.js | sed -n '/version:/,/],/p' # - name: Run application # run: npm start # env: # GOOGLE_PRIVATE_KEY: ${{ secrets.GOOGLE_PRIVATE_KEY }} # GOOGLE_SERVICE_ACCOUNT_EMAIL: ${{ secrets.GOOGLE_SERVICE_ACCOUNT_EMAIL }} # TEST_SHEET_ID: ${{ secrets.TEST_SHEET_ID }} # TB_THA_SHEET: ${{ secrets.TB_THA_SHEET }} # TB_MYS_SHEET: ${{ secrets.TB_MYS_SHEET }} # TB_SGP_SHEET: ${{ secrets.TB_SGP_SHEET }} # TB_UAE_SHEET: ${{ secrets.TB_UAE_SHEET }} # PORT: 36530 # DEBUG: server:* build-docker: runs-on: docker # needs: build-and-test steps: - name: Checkout code uses: actions/checkout@v4 - name: Install Docker CLI # uses: docker/setup-docker-action@v4 run: | apt-get update apt-get install -y docker.io which docker - name: Log in to Forgejo Docker Registry run: | echo "${{ secrets.ACCESS_TOKEN }}" | docker login pakin-inspiron-15-3530.tail110d9.ts.net -u "${{ secrets.DOCKER_USER }}" --password-stdin - name: Build Docker image run: | IMAGE_NAME=pakin-inspiron-15-3530.tail110d9.ts.net/pakin/ggs-cron:${{ github.ref_name }} /usr/bin/docker build -t $IMAGE_NAME . echo "IMAGE_NAME=$IMAGE_NAME" >> $GITHUB_ENV - name: Push Docker image run: /usr/bin/docker push $IMAGE_NAME # - name: Build Docker image # run: docker build -t ggs-cron:${{ github.ref_name }} . # - name: Run Docker container # run: | # docker run --rm \ # -e GOOGLE_PRIVATE_KEY=${{ secrets.GOOGLE_PRIVATE_KEY }} \ # -e GOOGLE_SERVICE_ACCOUNT_EMAIL=${{ secrets.GOOGLE_SERVICE_ACCOUNT_EMAIL }} \ # -e TEST_SHEET_ID=${{ secrets.TEST_SHEET_ID }} \ # -e TB_THA_SHEET=${{ secrets.TB_THA_SHEET }} \ # -e TB_MYS_SHEET=${{ secrets.TB_MYS_SHEET }} \ # -e TB_SGP_SHEET=${{ secrets.TB_SGP_SHEET }} \ # -e TB_UAE_SHEET=${{ secrets.TB_UAE_SHEET }} \ # -e PORT=36530 \ # -e DEBUG=server:* \ # ggs-cron:${{ github.ref_name }}