From 38d47afc76b61f127c23e880c842505866c9d273 Mon Sep 17 00:00:00 2001 From: Devin Ford Date: Mon, 30 Oct 2023 18:35:17 -0400 Subject: [PATCH] feat: update workflows with artifacts, remove netlify files --- .github/workflows/create_preview_sites.yml | 41 +++++++- .github/workflows/preview_site_trigger.yml | 15 ++- lib/vector-vrl/web-playground/netlify.toml | 17 ---- netlify.toml | 109 --------------------- rust-doc/netlify.toml | 9 -- website/Brewfile.netlify | 2 - 6 files changed, 50 insertions(+), 143 deletions(-) delete mode 100644 lib/vector-vrl/web-playground/netlify.toml delete mode 100644 netlify.toml delete mode 100644 rust-doc/netlify.toml delete mode 100644 website/Brewfile.netlify diff --git a/.github/workflows/create_preview_sites.yml b/.github/workflows/create_preview_sites.yml index 8bf8793393479..f605d59e43cce 100644 --- a/.github/workflows/create_preview_sites.yml +++ b/.github/workflows/create_preview_sites.yml @@ -30,14 +30,47 @@ jobs: exit 1 fi + # Get the artifacts with the PR number and branch name + - name: Download artifact + uses: actions/github-script@v3.1.0 + with: + script: | + const fs = require('fs'); + const artifacts = await github.actions.listWorkflowRunArtifacts({ + owner: context.repo.owner, + repo: context.repo.repo, + run_id: ${{ github.event.workflow_run.id }}, + }); + const matchArtifact = artifacts.data.artifacts.filter(artifact => artifact.name == "pr")[0]; + const download = await github.actions.downloadArtifact({ + owner: context.repo.owner, + repo: context.repo.repo, + artifact_id: matchArtifact.id, + archive_format: 'zip', + }); + fs.writeFileSync('${{ github.workspace }}/pr.zip', Buffer.from(download.data)); + + - run: unzip pr.zip -d pr + # Add preview link to comment if all 3 sites successfully start - name: Comment Preview Link if: success() env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - URLIZED_BRANCH=$(echo "${{ github.head_ref }}" | tr './' '--') - COMMENT_URL="https://api.github.com/repos/${{ github.repository }}/issues/${{ github.event.pull_request.number }}/comments" - COMMENT_CONTENT="Your preview site for the **$APP_NAME** will be ready in a few minutes, please allow time for it to build. \n \n Here's your link: \n [$APP_NAME preview](https://$URLIZED_BRANCH.$APP_ID.amplifyapp.com)" + uses: actions/github-script@v3 + with: + script: | + const prInfo = fs.readFileSync('./pr/PR_INFO', 'utf8'); + const prInfoLines = prInfo.split('\n'); + const issueNumber = parseInt(prInfoLines[0].split(': ')[1]); + const branchName = prInfoLines[1].split(': ')[1]; + const SANITIZED_BRANCH_NAME = branchName.replace(/[\/\.]/g, '-') + + await github.issues.createComment({ + owner: context.repo.owner, + repo: context.repo.repo, + issue_number: issue_number, + body: `Your preview site for the **${APP_NAME}** will be ready in a few minutes, please allow time for it to build. \n \n Heres your preview link: \n [${APP_NAME} preview](https://${SANITIZED_BRANCH_NAME}.${APP_ID}.amplifyapp.com)` + }); diff --git a/.github/workflows/preview_site_trigger.yml b/.github/workflows/preview_site_trigger.yml index 14fedd8f15055..0e313805f108d 100644 --- a/.github/workflows/preview_site_trigger.yml +++ b/.github/workflows/preview_site_trigger.yml @@ -8,7 +8,18 @@ jobs: approval_check: runs-on: ubuntu-latest steps: - - name: Check for approval + - name: Echo approval run: | - echo "Workflow has been allowed to run for PR ${{ github.event.number }}" + echo "Workflow has been allowed to run for PR ${{ github.event.number }}. Setting artifacts and then continuing workflow runs" + - name: Save PR number and Branch name + run: | + mkdir -p ./pr + echo "PR Number: ${{ github.event.number }}" > ./pr/PR_INFO + echo "Branch Name: ${{ github.head_ref }}" >> ./pr/PR_INFO + + - name: Upload PR information artifact + uses: actions/upload-artifact@v2 + with: + name: pr + path: pr/ diff --git a/lib/vector-vrl/web-playground/netlify.toml b/lib/vector-vrl/web-playground/netlify.toml deleted file mode 100644 index 824b50e04972f..0000000000000 --- a/lib/vector-vrl/web-playground/netlify.toml +++ /dev/null @@ -1,17 +0,0 @@ -# Settings in the [build] context are global and are applied to -# all contexts unless otherwise overridden by more specific contexts. -[build] - # Directory to change to before starting a build. - # This is where we will build the site in web-playground/public. - # If not set, defaults to the root directory. - base = "lib/vector-vrl/web-playground/" - - # Directory that contains the deploy-ready HTML files and - # assets generated by the build. - publish = "public/" - - # Default build command. - command = "bash ../../../scripts/ensure-wasm-pack-installed.sh && wasm-pack build --target web --out-dir public/pkg" - - # Ignore everything except the base directory and changes to vector/lib/ - ignore = "git diff --quiet $CACHED_COMMIT_REF $COMMIT_REF . ../../../lib" diff --git a/netlify.toml b/netlify.toml deleted file mode 100644 index bcf59eb205b40..0000000000000 --- a/netlify.toml +++ /dev/null @@ -1,109 +0,0 @@ -[build] -base = "website" -publish = "public" - -# Reinstate this when we figure out how to target this better -#ignore = "./scripts/build-ignore.sh" - -[build.environment] -HUGO_VERSION = "0.84.0" -ALGOLIA_INDEX_FILE="public/search.json" - -[context.production] -command = "make ci-production-build" - -[context.production.environment] -ALGOLIA_INDEX_NAME="vector_docs_prod" - -[context.deploy-preview] -command = "make ci-preview-build" - -[context.deploy-preview.environment] -ALGOLIA_INDEX_NAME="vector_docs_staging" - -[context.branch-deploy] -command = "make ci-preview-build" - -[context.branch-deploy.environment] -ALGOLIA_INDEX_NAME="vector_docs_staging" - -# Subdomain redirects -[[redirects]] -from = "https://vector-project.netlify.com/*" -to = "https://vector.dev/:splat" -status = 301 -force = true - -[[redirects]] -from = "https://calendar.vector.dev/*" -to = "https://calendar.google.com/calendar/embed?src=c_qsq1nrsgetsspkn7pjrqh6cclc%40group.calendar.google.com&ctz=America%2FNew_York" -status = 302 -force = true - -[[redirects]] -from = "https://chat.vector.dev/*" -to = "https://discord.gg/ptvgXhUF2m" -status = 302 -force = true - -[[redirects]] -from = "https://discussions.vector.dev/*" -to = "https://github.com/vectordotdev/vector/discussions" -status = 302 -force = true - -[[redirects]] -from = "https://sh.vector.dev/*" -to = "http://sh.vector.dev.s3-website-us-east-1.amazonaws.com/:splat" -status = 200 -force = true - -[[redirects]] -from = "https://test-results.vector.dev/*" -to = "http://test-results.vector.dev.s3-website-us-east-1.amazonaws.com/:splat" -status = 200 -force = true - -[[redirects]] -from = "https://rustdoc.vector.dev/*" -to = "https://vector-rustdoc.netlify.app/vector/:splat" -status = 301 -force = true - -[[redirects]] -from = "/support/" -to = "https://www.datadoghq.com/product/observability-pipelines" -status = 301 -force = true - -[[redirects]] -from = "/support-services/" -to = "https://www.datadoghq.com/product/observability-pipelines" -status = 301 -force = true - -[[redirects]] -from = "https://setup.vector.dev/*" -to = "https://s3.amazonaws.com/dd-agent/scripts/install_script_vector0.sh" -status = 302 -force = true - -# Removed pages redirects -[[redirects]] -from = "/docs/reference/configuration/field-path-notation/" -to = "/docs/reference/vrl/expressions/#path" -force = true - -# CORS headers for /index.json -[[headers]] -for = "/index.json" - -[headers.values] -Access-Control-Allow-Origin = "*" - -# Netlify plugins -[[plugins]] -package = "@netlify/plugin-lighthouse" - -[plugins.inputs] -output_path = "reports/lighthouse/index.html" diff --git a/rust-doc/netlify.toml b/rust-doc/netlify.toml deleted file mode 100644 index 345a6e7adf850..0000000000000 --- a/rust-doc/netlify.toml +++ /dev/null @@ -1,9 +0,0 @@ -[build] -publish = "../target/doc/" -command = "make docs" - -[[redirects]] -from = "/" -to = "/vector" -status = 301 -force = false diff --git a/website/Brewfile.netlify b/website/Brewfile.netlify deleted file mode 100644 index 7bad8dd1207fb..0000000000000 --- a/website/Brewfile.netlify +++ /dev/null @@ -1,2 +0,0 @@ -brew "cue" -brew "htmltest"