* fix: make script for linting translations executable
* fix: execute the command directly
* feat: surface any errors if lint check fails
* fix: do not return early if lint check errors
Co-authored-by: Octomerger Bot <63058869+Octomerger@users.noreply.github.com>
* feat: stub two reset scripts
* refactor: split lint script into two separate files
* fix: revert back to original lint script
* refactor: use commander interface for linting translation files
* Skip reset attempt when violation list is empty
So that "execSync(`cat ${log}...`)" in line 64 is never executed. When
there are no errors, the log file is not created, and unless it had been
previously created by another process, the script will error out.
Co-authored-by: Marcelo Jacobus <marcelo.jacobus@gmail.com>
* fix: de-duplicate and filter non-existent broken files
* fix: sequentially reset known broken translation files
When a known broken translation is reset, a Git operation performs the
underlying reset. If more than one Git operation is running at a time,
Git will throw an error:
> Another git process seems to be running in this repository [...]
This change ensures that we reset each broken translation file
sequentially to not run into this error.
* Skip reset of a file that does not exist
Co-authored-by: Marcelo Jacobus <marcelo.jacobus@gmail.com>
* updating search icon
* remove no fill
* update fill color
* using ActionList and Overlay
* update to ActionList, Overlay, add Label to Breadcrumbs, and change Mark
* add search-results test data and move header search results to right
* make search results scrollable and fix max-width in header search
* update header search and styling updates
* add highlight
* update styling
* styling and lint errors
* fix lint error and fetch
* Update components/Search.tsx
* update label color
* remove bottom margin
Co-authored-by: Rachael Sewell <rachmari@github.com>
* Create migrate-colors-primer-18.js
* Update colors round 1
* upgrade primer packages
* Update index.scss
* Replace auto colors
* remove btn-primary-matte
* Turns out the class names and variables names DONT LINE UP... ugh....
* Check for allowed var colors
* Do not use `build.status` of 'pending' as a looping condition for Heroku deployment
* Don't wait for `appSetup.status` either
* Fix incorrect Octokit method usage in local deploy script
* Bump the number of allowable errors from 5 to 10
* More logging!
* Add an environment variable for easily increasing the number of allowed Heroku failures per phase of polling
* Move concurrency control to top-level in prod deploy workflow
* Add 503 to the list of temporarily acceptable Heroku failure codes
* Add HEROKU_PRODUCTION_APP_NAME back into the prod deploy workflow
* run prettier
* removing files from test/integration
* update cron job to not start on the hour
* add github/github comment
* update comment
* updating to search by indices in the content rather than by line
* small updates and updating character max
* update name of script run
* updating to use api search code and get contents
* using api search code and get contents
* adding token check and .js
* remove blank line for title
* update issue body content
* update comment
* add support for GitHub.developer_help_url links
* Update the production deployment workflow to target the main Heroku app
Without exposing our internal Heroku app name!
* Refactor the staging deployment script a bit to match more closely
* Use the HEROKU_PRODUCTION_APP_NAME Secret in the workflow
* Add a note about the newly required environment variable for production deployment into the local deploy script
* Add critical errors if the HEROKU_PRODUCTION_APP_NAME is missing
* Extract HEROKU_PRODUCTION_APP_NAME from process.env
* Revert the critical parts of PR #21807 to no longer deploy to prod via Actions
* Don't require HEROKU_PRODUCITON_APP_NAME
* Update the production deployment workflow to target the main Heroku app
Without exposing our internal Heroku app name!
* Refactor the staging deployment script a bit to match more closely
* Use the HEROKU_PRODUCTION_APP_NAME Secret in the workflow
* Add a note about the newly required environment variable for production deployment into the local deploy script
* Add critical errors if the HEROKU_PRODUCTION_APP_NAME is missing
* Extract HEROKU_PRODUCTION_APP_NAME from process.env
* Use the 'script/deployment/create-staging-app-name' module when creating the content changes table comments
* Remove the shebang from the non-runnable script helper module
* Create a logic branch to deploy to production via a local script
* Ignore forceRebuild default value for production
* Add soft warnings for missing-but-not-critical env vars
* Only include the Preboot delay if the Fastly env vars are present
* Add some warning emojis ⚠️
* More emojis!
* Make FASTLY_* checks all independent
* Add more comments about additional env vars recommended for a local prod deployment
* add production deployment
* updating existing build
* remove state
* remove PR_URL and switch to main branch
* break out into build, prepare, and deploy
* update to download-artifact
* update staging to prod
* Actions production deployment redux (#21238)
* Simplify production deployment into a single Actions job
* Force esm to install
* Switch flag ordering to match staging deploy
* Use 'npm install' for the second installation to avoid deleting the prodDeps
* Apply Heroku upload fixes
* Include `.npmrc` file in builds to omit `optionalDeps`
* Remove download-artifact action
Co-authored-by: Grace Park <gracepark@github.com>
* Script updates to prod deployment (#21247)
* updating script to use latest sha
* changing back workflowRunLog
* remove line
* update error wording
* remove comment - using commit sha
* need release.id
* Update script/deployment/deploy-to-production.js
Co-authored-by: James M. Greene <JamesMGreene@github.com>
* remove hydro
* Update script/deployment/deploy-to-production.js
Co-authored-by: James M. Greene <JamesMGreene@github.com>
* Update .github/workflows/prod-build-deploy-pr.yml
Co-authored-by: James M. Greene <JamesMGreene@github.com>
* Update script/deployment/deploy-to-production.js
Co-authored-by: James M. Greene <JamesMGreene@github.com>
* Update script/deployment/deploy-to-production.js
Co-authored-by: James M. Greene <JamesMGreene@github.com>
* Update script/deployment/deploy-to-production.js
Co-authored-by: James M. Greene <JamesMGreene@github.com>
* updating spacing
* add 404/429 responses while polling Heroku API for prod
* removing nested ifs
* adding SOURCE_BLOB_URL
* update for early access
* add install dotenv
* need to add persist-credentials
* Testing GET request
* update request
* Rename workflow file to remove '-pr'
We are now triggering on pushes to 'main' rather than PR merges
* Remove the unnecessary workflow step to create a failure Status
Because the production deploy is done via a single workflow rather than a 2-part workflow chain, this is thankfully unnecessary
* Install all of the npm dependencies
We'll need them!
* Add the '-z' flag to 'tar' to gzip the tarball
* Pass the Heroku upload URL via env vars for security
Prevents potential injection attacks
* Log the deployment ID and log URL as deploy step outputs
* Take notice of Heroku polling resulting in failure statuses
* Add a note to consider waiting for Heroku Preboot
* Add a script and workflow step to purge Fastly
* update response to get sha
* Switch to Octokit functions instead of 'request' method
Co-authored-by: James M. Greene <JamesMGreene@github.com>
* Explicitly ensure the early access parent directories are created when cloning
* Use explicit --file flag with tar
* Remove security hole for Staging deployment by concatenating archives
* Fail the staging builds if *.js, .npmrc, or Procfile is changed in the open source repo
* docker build: extract user-code in separate directory
* Checkout PR base branch and install dependencies
* Remove one-off package installs
* Remove selective file checkout
* Don't persist git cloning credentials
It usually makes the clone of early access content fail in the later steps
* Update .github/workflows/staging-deploy-pr-docker.yml
Co-authored-by: James M. Greene <JamesMGreene@github.com>
* Update .github/workflows/staging-deploy-pr-docker.yml
Co-authored-by: James M. Greene <JamesMGreene@github.com>
* Remove debugging step
* Best practice: Use environment variables to avoid potential injection attacks if the data was user-controlled
Co-authored-by: Mike Surowiec <mikesurowiec@users.noreply.github.com>
Co-authored-by: Robert Sese <sese@github.com>
Co-authored-by: Robert Sese <robert.sese@gmail.com>