Merge pull request #179 from drackp2m/dev #208
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Deploy Play Set Online to Github Pages | |
on: | |
push: | |
branches: | |
- main | |
permissions: | |
contents: write | |
pages: write | |
id-token: write | |
concurrency: | |
group: 'pages' | |
cancel-in-progress: false | |
jobs: | |
tests: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Set up Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '22.9' | |
cache: 'npm' | |
- name: Install dependencies | |
run: npm ci | |
- name: Run tests | |
env: | |
MIKRO_ORM_CLI: apps/api/src/shared/module/config/mikro-orm.config.ts | |
MIKRO_ORM_CLI_TS_CONFIG_PATH: apps/api/tsconfig.app.json | |
MIKRO_ORM_CLI_USE_TS_NODE: true | |
run: node --run test | |
build: | |
runs-on: ubuntu-latest | |
needs: tests | |
steps: | |
- name: Setup Pages | |
id: pages | |
uses: actions/configure-pages@v4 | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Set up Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '22.9' | |
cache: 'npm' | |
- name: Install dependencies | |
run: npm ci | |
- name: Build application | |
run: node --run build:app -- --base-href ${{ steps.pages.outputs.base_url }}/ | |
- name: Upload artifact | |
uses: actions/upload-pages-artifact@v3 | |
with: | |
path: './dist/apps/app/browser' | |
release: | |
runs-on: ubuntu-latest | |
needs: build | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
- name: Set up Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '22.9' | |
cache: 'npm' | |
- name: Install dependencies | |
run: npm ci | |
- name: Import GPG key | |
env: | |
GPG_PRIVATE_KEY: ${{ secrets.SEMANTIC_RELEASE_GPG_PRIVATE_KEY }} | |
run: | | |
echo "$GPG_PRIVATE_KEY" > private.key | |
gpg --batch --import private.key | |
git config --global user.name "semantic-release-bot" | |
git config --global user.email "[email protected]" | |
git config --global commit.gpgSign true | |
git config --global user.signingkey 42247470C3E2A13A | |
echo "allow-loopback-pinentry" >> ~/.gnupg/gpg-agent.conf | |
echo "pinentry-mode loopback" >> ~/.gnupg/gpg.conf | |
gpgconf --kill gpg-agent | |
- name: Run semantic-release | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
GIT_AUTHOR_NAME: semantic-release-bot | |
GIT_AUTHOR_EMAIL: [email protected] | |
GIT_COMMITTER_NAME: semantic-release-bot | |
GIT_COMMITTER_EMAIL: [email protected] | |
run: node --run release | |
deploy: | |
environment: | |
name: github-pages | |
url: ${{ steps.deployment.outputs.page_url }} | |
runs-on: ubuntu-latest | |
needs: build | |
steps: | |
- name: Deploy to GitHub Pages | |
id: deployment | |
uses: actions/deploy-pages@v4 |