Skip to content

fix(structure): adapt type-safety checks/alternatives #1332

fix(structure): adapt type-safety checks/alternatives

fix(structure): adapt type-safety checks/alternatives #1332

Workflow file for this run

name: CI/CD
on: push
# Those variables required for the build to pass
# But they're not used when deployed as the build is run on the server
env:
CMS_URL: https://cms.tchoukball.ch
ST_CONTACT_EMAIL_RECIPIENT: [email protected]
jobs:
CI:
runs-on: ubuntu-latest
steps:
- name: Checkout πŸ›Ž
uses: actions/checkout@master
- name: Setup node env πŸ—
uses: actions/[email protected]
with:
node-version: 20
check-latest: true
- name: Cache node_modules πŸ“¦
uses: actions/[email protected]
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- name: Install dependencies πŸ‘¨πŸ»β€πŸ’»
run: npm ci --prefer-offline --no-audit
- name: Run linter πŸ‘€
run: npm run lint
- name: Build πŸ”¨
run: npm run build
Deploy-to-staging:
if: ${{ github.ref == 'refs/heads/main' }}
needs: CI
runs-on: ubuntu-latest
environment:
name: Staging
url: https://next.tchoukball.ch
steps:
- name: Deploy to staging πŸš€
uses: appleboy/[email protected]
with:
host: ${{secrets.SSH_HOST}}
username: ${{ secrets.SSH_USERNAME }}
key: ${{ secrets.SSH_PRIVATE_KEY }}
passphrase: ${{ secrets.SSH_PASSPHRASE }}
script: |
cd ~/sites/next.tchoukball.ch
git pull
source ~/.nvm/.profile
source ~/env_vars/website-staging.sh
nvm install
npm ci
npm run build
npm list -g pm2 || npm install -g pm2
pm2 restart website-nuxt-staging
Deploy-to-production:
if: ${{ github.ref == 'refs/heads/main' }}
needs: CI
runs-on: ubuntu-latest
environment:
name: Production
url: https://tchoukball.ch
steps:
- name: Deploy to production πŸš€
uses: appleboy/[email protected]
with:
host: ${{secrets.SSH_HOST}}
username: ${{ secrets.SSH_USERNAME }}
key: ${{ secrets.SSH_PRIVATE_KEY }}
passphrase: ${{ secrets.SSH_PASSPHRASE }}
script: |
cd ~/sites/tchoukball.ch
git pull
source ~/.nvm/.profile
source ~/env_vars/website-prod.sh
nvm install
npm ci
npm run build
npm list -g pm2 || npm install -g pm2
pm2 restart website-nuxt-prod