name: Upload offline self-extracting archive on: workflow_dispatch: jobs: release: name: Upload offline self-extracting archive runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v4 - name: Set environment variables run: | DOCKER_VERSION=$(curl -s https://hub.docker.com/v2/repositories/onlyoffice/4testing-docspace-api/tags/ | jq -r '.results[].name' | grep -oE '^[0-9]+\.[0-9]+\.[0-9]+' | sort -V | tail -n 1) echo "ARTIFACT_NAME=offline-docspace-installation.sh" >> $GITHUB_ENV echo "ARTIFACT_VERSION_NAME=offline-docspace-${DOCKER_VERSION}-installation.sh" >> $GITHUB_ENV - name: Configure AWS Credentials uses: aws-actions/configure-aws-credentials@v4 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 offline self-extracting archive (latest) run: | aws s3 cp ${{ secrets.AWS_BUCKET_URL_OCI }}/4testing-${{ env.ARTIFACT_NAME }} \ ${{ secrets.AWS_BUCKET_URL_OCI }}/${{ env.ARTIFACT_NAME }} \ --acl public-read \ --metadata-directive REPLACE - name: Upload offline self-extracting archive (versioned) run: | aws s3 cp ${{ secrets.AWS_BUCKET_URL_OCI }}/4testing-${{ env.ARTIFACT_NAME }} \ ${{ secrets.AWS_BUCKET_URL_OCI }}/${{ env.ARTIFACT_VERSION_NAME }} \ --acl public-read \ --metadata-directive REPLACE - name: Invalidate AWS CloudFront cache run: | aws cloudfront create-invalidation \ --distribution-id ${{ secrets.AWS_DISTRIBUTION_ID_OCI }} \ --paths "/docspace/${{ env.ARTIFACT_NAME }}" "/docspace/${{ env.ARTIFACT_VERSION_NAME }}"