Skip to content

Instantly share code, notes, and snippets.

@warren30815
Created July 7, 2023 07:50
Show Gist options
  • Save warren30815/cd36c1e22659aed355e01845b508cf7b to your computer and use it in GitHub Desktop.
Save warren30815/cd36c1e22659aed355e01845b508cf7b to your computer and use it in GitHub Desktop.
Gitlab CI with uploading bundled file to aws s3
stages:
- build
build:
stage: build
image: node:lts
variables:
AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY
script:
- yarn install
- yarn build
- export NAME=$(node -p "require('./package.json').name")
- export VERSION=$(node -p "require('./package.json').version")
- export ENV=$(node -p "require('./package.json').env")
- export TZ="Asia/Taipei"
- export TIME=$(date +'%Y-%m-%d-%H-%M')
- export FILENAME=${NAME}-v${VERSION}-${ENV}-${TIME}.zip
- apt-get update && apt-get install -y zip
- zip -r $FILENAME dist/
- cp $FILENAME public/
- apt-get install -y awscli
- aws configure set aws_access_key_id $AWS_ACCESS_KEY_ID
- aws configure set aws_secret_access_key $AWS_SECRET_ACCESS_KEY
- aws s3 cp $FILENAME s3://your-bucket-path/
artifacts:
paths:
- public
only:
- main
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment