Skip to content

feat: export courses to s3 bucket (#2530) #16

feat: export courses to s3 bucket (#2530)

feat: export courses to s3 bucket (#2530) #16

name: Deploy sloths.rs.school
on:
push:
branches: [master]
paths:
- 'tools/sloths/**'
- '.github/workflows/deploy-sloths.yaml'
concurrency:
group: deploy-sloths
cancel-in-progress: true
jobs:
build_deploy:
name: Build and Deploy
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./tools/sloths
steps:
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Checkout
uses: actions/checkout@v4
- name: Restore npm cache
uses: actions/cache@v4
env:
cache-name: cache-npm
with:
path: ~/.npm
key: ${{ runner.os }}-${{ env.cache-name }}-${{ hashFiles('**/package.json') }}
restore-keys: |
${{ runner.os }}-${{ env.cache-name }}-
- name: Install dependencies
run: npm ci
- name: Build
env:
VITE_CDN_URL: https://cdn.rs.school/sloths
run: npm run build-only
- name: Upload to S3
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_DEFAULT_REGION: eu-central-1
run: |
aws s3 cp dist s3://sloths.rs.school/ --recursive --cache-control "public,max-age=3600,immutable"