Files
Archive/socratex/.github/workflows/build.yml
2025-03-27 19:36:13 +01:00

43 lines
1.4 KiB
YAML

# This workflow will run tests using node and then publish a package to GitHub Packages when a release is created
# For more information see: https://help.github.com/actions/language-and-framework-guides/publishing-nodejs-packages
name: Node.js Package, Docker Image
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
build-npm:
runs-on: ubuntu-latest
if: "!startsWith(github.event.head_commit.message, '[RELEASE]')"
steps:
- uses: actions/checkout@v3
with:
token: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/setup-node@v3
with:
node-version: 22
registry-url: https://registry.npmjs.org/
- run: git config --global user.name 'Leask Wong'
- run: git config --global user.email 'i@leaskh.com'
- run: npm version patch -m "[RELEASE] %s"
- run: git push
- run: npm install
- run: npm test
- run: npm publish
env:
NODE_AUTH_TOKEN: ${{secrets.npm_token}}
build-docker:
needs: build-npm
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Build the Docker image
run: |
docker build . --no-cache --file Dockerfile --tag leask/socratex
docker login --username ${{ secrets.DOCKER_USERNAME }} --password ${{ secrets.DOCKER_PASSWORD }}
docker push leask/socratex