From 9cc902be7ebe7f6c57d67659307cbb93f9aee2fc Mon Sep 17 00:00:00 2001 From: Evgeniy Antonyuk Date: Thu, 8 Aug 2024 13:12:58 +0300 Subject: [PATCH] =?UTF-8?q?Upload=20One=D0=A1lickInstall=20scripts=20on=20?= =?UTF-8?q?S3=20(#304)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/oci-release.yml | 75 +++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 .github/workflows/oci-release.yml diff --git a/.github/workflows/oci-release.yml b/.github/workflows/oci-release.yml new file mode 100644 index 0000000000..fac8b7b944 --- /dev/null +++ b/.github/workflows/oci-release.yml @@ -0,0 +1,75 @@ +name: Upload OneСlickInstall scripts on S3 + +on: + push: + branches: + - master + paths: + - 'install/docker/*.yml' + - 'install/docker/*.env' + - 'install/docker/config/**' + - 'install/OneClickInstall/**' + workflow_dispatch: + +env: + PRODUCT: docspace + +jobs: + release: + name: Scripts release + runs-on: ubuntu-latest + env: + DOCKER_DIR: "${{ github.workspace }}/install/docker" + SCRIPT_DIR: "${{ github.workspace }}/install/OneClickInstall" + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Creating an enterprise script + run: | + cp ${{ env.SCRIPT_DIR }}/$(${{ env.PRODUCT }})-install.sh ${{ env.SCRIPT_DIR }}/$(${{ env.PRODUCT }})-enterprise-install.sh + sed -i 's/\(PARAMETERS -it\).*";/\1 ENTERPRISE";/' ${{ env.SCRIPT_DIR }}/$(${{ env.PRODUCT }})-enterprise-install.sh + + - name: Create Docker Tarball + run: | + cd ${{ env.DOCKER_DIR }} + tar -czvf ${{ env.SCRIPT_DIR }}/docker.tar.gz --exclude='config/supervisor*' *.yml .env config/ + + - name: Configure AWS Credentials + uses: aws-actions/configure-aws-credentials@v1 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID_OCI }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY_OCI }} + aws-region: us-east-1 + + - name: Upload scripts + run: | + cd ${{ env.SCRIPT_DIR }} + aws s3 cp . ${{ secrets.AWS_BUCKET_URL_OCI }}/ \ + --recursive \ + --acl public-read \ + --content-type application/x-sh \ + --metadata-directive REPLACE \ + --exclude '*' \ + --include="$(${{ env.PRODUCT }})-install.sh" \ + --include="$(${{ env.PRODUCT }})-enterprise-install.sh" \ + --include="install-RedHat.sh" \ + --include="install-RedHat/*" \ + --include="install-Debian.sh" \ + --include="install-Debian/*" \ + --include="install-Docker.sh" \ + --include="docker.tar.gz" + + - name: Invalidate AWS CloudFront cache + run: | + aws cloudfront create-invalidation \ + --distribution-id ${{ secrets.AWS_DISTRIBUTION_ID_OCI }} \ + --paths \ + "/$(${{ env.PRODUCT }})/$(${{ env.PRODUCT }})-install.sh" \ + "/$(${{ env.PRODUCT }})/$(${{ env.PRODUCT }})-enterprise-install.sh" \ + "/$(${{ env.PRODUCT }})/install-RedHat.sh" \ + "/$(${{ env.PRODUCT }})/install-RedHat/*" \ + "/$(${{ env.PRODUCT }})/install-Debian.sh" \ + "/$(${{ env.PRODUCT }})/install-Debian/*" \ + "/$(${{ env.PRODUCT }})/install-Docker.sh" \ + "/$(${{ env.PRODUCT }})/docker.tar.gz"