|
31 | 31 | type: boolean
|
32 | 32 | github_pages:
|
33 | 33 | type: boolean
|
| 34 | + bunnycdn_production: |
| 35 | + type: boolean |
| 36 | + minio_production: |
| 37 | + type: boolean |
34 | 38 | outputs:
|
35 | 39 | netlify_preview_address:
|
36 | 40 | value: ${{ jobs.netlify_preview.outputs.address }}
|
37 | 41 | secrets:
|
38 | 42 | NETLIFY_TOKEN:
|
| 43 | + PROD_BUNNYCDN_API_KEY: |
| 44 | + PROD_BUNNYCDN_PASSWORD: |
| 45 | + PROD_MINIO_KEY_ID: |
| 46 | + PROD_MINIO_SECRET_KEY: |
39 | 47 |
|
40 | 48 | jobs:
|
41 | 49 | netlify_preview:
|
|
90 | 98 |
|
91 | 99 | environment:
|
92 | 100 | name: production
|
93 |
| - url: https://www.privacyguides.org |
| 101 | + url: https://illustrious-bavarois-56cf30.netlify.app/ |
94 | 102 |
|
95 | 103 | steps:
|
96 | 104 | - uses: actions/download-artifact@v4
|
@@ -165,3 +173,68 @@ jobs:
|
165 | 173 |
|
166 | 174 | - id: deployment
|
167 | 175 | uses: actions/deploy-pages@main
|
| 176 | + |
| 177 | + bunnycdn_production: |
| 178 | + if: inputs.bunnycdn_production |
| 179 | + runs-on: ubuntu-latest |
| 180 | + |
| 181 | + permissions: |
| 182 | + contents: read |
| 183 | + |
| 184 | + environment: |
| 185 | + name: production |
| 186 | + url: https://privacyguides-org-production.b-cdn.net |
| 187 | + |
| 188 | + steps: |
| 189 | + - uses: actions/download-artifact@v4 |
| 190 | + with: |
| 191 | + pattern: site-build-* |
| 192 | + merge-multiple: true |
| 193 | + |
| 194 | + - run: | |
| 195 | + for file in *.tar.gz; do tar -zxf "$file"; done |
| 196 | + ls -la site/ |
| 197 | +
|
| 198 | + - uses: own3d/bunny-action@bfaa5c6bc8b7a7ebd599ddd4912347d7c3847e78 |
| 199 | + env: |
| 200 | + BUNNY_API_ACCESS_KEY: ${{ secrets.PROD_BUNNYCDN_API_KEY }} |
| 201 | + BUNNY_STORAGE_HOSTNAME: storage.bunnycdn.com |
| 202 | + BUNNY_STORAGE_USERNAME: ${{ vars.PROD_BUNNYCDN_USER }} |
| 203 | + BUNNY_STORAGE_PASSWORD: ${{ secrets.PROD_BUNNYCDN_PASSWORD }} |
| 204 | + BUNNY_PULL_ZONE_ID: 2117106 |
| 205 | + with: |
| 206 | + server: "storage.bunnycdn.com" |
| 207 | + username: ${{ vars.PROD_BUNNYCDN_USER }} |
| 208 | + password: ${{ secrets.PROD_BUNNYCDN_PASSWORD }} |
| 209 | + local-dir: ./site/ |
| 210 | + |
| 211 | + minio_production: |
| 212 | + if: inputs.minio_production |
| 213 | + runs-on: ubuntu-latest |
| 214 | + |
| 215 | + permissions: |
| 216 | + contents: read |
| 217 | + |
| 218 | + environment: |
| 219 | + name: production |
| 220 | + url: https://privacyguides-org-production.stor1-minio.jonaharagon.net |
| 221 | + |
| 222 | + steps: |
| 223 | + - uses: actions/download-artifact@v4 |
| 224 | + with: |
| 225 | + pattern: site-build-* |
| 226 | + merge-multiple: true |
| 227 | + |
| 228 | + - run: | |
| 229 | + for file in *.tar.gz; do tar -zxf "$file"; done |
| 230 | + ls -la site/ |
| 231 | +
|
| 232 | + - uses: jakejarvis/s3-sync-action@master |
| 233 | + with: |
| 234 | + args: --acl public-read --follow-symlinks --delete |
| 235 | + env: |
| 236 | + SOURCE_DIR: "site/" |
| 237 | + AWS_S3_BUCKET: ${{ vars.PROD_MINIO_BUCKET }} |
| 238 | + AWS_S3_ENDPOINT: ${{ vars.PROD_MINIO_HOSTNAME }} |
| 239 | + AWS_ACCESS_KEY_ID: ${{ secrets.PROD_MINIO_KEY_ID }} |
| 240 | + AWS_SECRET_ACCESS_KEY: ${{ secrets.PROD_MINIO_SECRET_KEY }} |
0 commit comments