update build pipeline

This commit is contained in:
2025-02-20 19:18:50 +06:00
parent c75c73995c
commit c964df3fbe

View File

@ -11,39 +11,40 @@ variables:
- &image_aws_cli amazon/aws-cli:2.15.50 - &image_aws_cli amazon/aws-cli:2.15.50
- &image_drone_cache meltwater/drone-cache:v1.4.0 - &image_drone_cache meltwater/drone-cache:v1.4.0
deploy_secrets: &deploy_secrets deploy_envs: &deploy_envs
- S3_BUCKET S3_BUCKET:
- CLOUDFRONT_DISTRIBUTION from_secret: S3_BUCKET
- AWS_ACCESS_KEY_ID CLOUDFRONT_DISTRIBUTION:
- AWS_SECRET_ACCESS_KEY from_secret: CLOUDFRONT_DISTRIBUTION
- AWS_REGION
cache_step: &cache_step
image: *image_drone_cache
environment:
AWS_ACCESS_KEY_ID: AWS_ACCESS_KEY_ID:
from_secret: CACHE_S3_ACCESS_KEY_ID from_secret: AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY: AWS_SECRET_ACCESS_KEY:
from_secret: CACHE_S3_SECRET_ACCESS_KEY from_secret: AWS_SECRET_ACCESS_KEY
AWS_REGION:
from_secret: AWS_REGION
cache_settings: &cache_settings cache_settings: &cache_settings
cache_key: '{{ checksum "yarn.lock" }}' access-key:
archive_format: zstd from_secret: CACHE_S3_ACCESS_KEY_ID
bucket: secret-key:
from_secret: CACHE_S3_BUCKET from_secret: CACHE_S3_SECRET_ACCESS_KEY
endpoint: endpoint:
from_secret: CACHE_S3_ENDPOINT from_secret: CACHE_S3_ENDPOINT
region: region:
from_secret: CACHE_S3_REGION from_secret: CACHE_S3_REGION
bucket:
from_secret: CACHE_S3_BUCKET
path_style: path_style:
from_secret: CACHE_S3_USE_PATH_STYLE from_secret: CACHE_S3_USE_PATH_STYLE
cache_key: '{{ checksum "yarn.lock" }}'
archive_format: zstd
mount: mount:
- 'node_modules' - 'node_modules'
steps: steps:
- name: cache/restore - name: cache/restore
<<: *cache_step image: *image_drone_cache
settings: settings:
<<: *cache_settings <<: *cache_settings
restore: true restore: true
@ -58,7 +59,7 @@ steps:
- name: cache/rebuild - name: cache/rebuild
depends_on: [build/nodejs] depends_on: [build/nodejs]
<<: *cache_step image: *image_drone_cache
settings: settings:
<<: *cache_settings <<: *cache_settings
rebuild: true rebuild: true
@ -67,8 +68,9 @@ steps:
depends_on: [build/nodejs] depends_on: [build/nodejs]
when: when:
- branch: main - branch: main
secrets: *deploy_secrets
image: *image_aws_cli image: *image_aws_cli
environment:
<<: *deploy_envs
commands: commands:
- aws s3 sync --delete ./dist "s3://$${S3_BUCKET}/" - aws s3 sync --delete ./dist "s3://$${S3_BUCKET}/"
@ -76,8 +78,9 @@ steps:
depends_on: [publish/s3] depends_on: [publish/s3]
when: when:
- branch: main - branch: main
secrets: *deploy_secrets
image: *image_aws_cli image: *image_aws_cli
environment:
<<: *deploy_envs
commands: commands:
- aws cloudfront create-invalidation --distribution-id - aws cloudfront create-invalidation --distribution-id
"$${CLOUDFRONT_DISTRIBUTION}" --paths '/*' "$${CLOUDFRONT_DISTRIBUTION}" --paths '/*'