Publish Internal #8
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow is used to build and publish the | |
# agent script loaded on our internal NR1 environments. | |
name: Publish Internal | |
on: | |
workflow_dispatch: | |
inputs: | |
nr_environment: | |
description: 'Target New Relic environment' | |
required: true | |
type: choice | |
options: | |
- dev | |
- staging | |
- prod | |
- eu-prod | |
nrba_released_script_url: | |
description: 'URL for the script to use as the latest released version NRBA loader.' | |
required: false | |
default: https://js-agent.newrelic.com/nr-loader-spa-current.min.js | |
nrba_latest_script_url: | |
description: 'URL for the script to use as the latest unreleased version NRBA loader.' | |
required: false | |
default: https://js-agent.newrelic.com/dev/nr-loader-spa.min.js | |
jobs: | |
publish-internal: | |
runs-on: ubuntu-latest | |
timeout-minutes: 30 | |
defaults: | |
run: | |
shell: bash | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: lts/* | |
- name: Prepare target environment | |
id: target-environment | |
run: | | |
if [[ "${{ inputs.nr_environment }}" == "prod" ]]; then | |
echo "nrba_app_id=${{ secrets.INTERNAL_PRODUCTION_APPLICATION_ID }}" >> $GITHUB_OUTPUT | |
echo "nrba_license_key=${{ secrets.INTERNAL_LICENSE_KEY }}" >> $GITHUB_OUTPUT | |
echo "nrba_ab_app_id=" >> $GITHUB_OUTPUT | |
echo "nrba_ab_license_key=" >> $GITHUB_OUTPUT | |
elif [[ "${{ inputs.nr_environment }}" == "eu-prod" ]]; then | |
echo "nrba_app_id=${{ secrets.INTERNAL_EU_PRODUCTION_APPLICATION_ID }}" >> $GITHUB_OUTPUT | |
echo "nrba_license_key=${{ secrets.INTERNAL_LICENSE_KEY }}" >> $GITHUB_OUTPUT | |
echo "nrba_ab_app_id=" >> $GITHUB_OUTPUT | |
echo "nrba_ab_license_key=" >> $GITHUB_OUTPUT | |
elif [[ "${{ inputs.nr_environment }}" == "staging" ]]; then | |
echo "nrba_app_id=${{ secrets.INTERNAL_STAGING_APPLICATION_ID }}" >> $GITHUB_OUTPUT | |
echo "nrba_license_key=${{ secrets.INTERNAL_LICENSE_KEY }}" >> $GITHUB_OUTPUT | |
echo "nrba_ab_app_id=${{ secrets.INTERNAL_AB_STAGING_APPLICATION_ID }}" >> $GITHUB_OUTPUT | |
echo "nrba_ab_license_key=${{ secrets.INTERNAL_AB_LICENSE_KEY }}" >> $GITHUB_OUTPUT | |
elif [[ "${{ inputs.nr_environment }}" == "dev" ]]; then | |
echo "nrba_app_id=${{ secrets.INTERNAL_DEV_APPLICATION_ID }}" >> $GITHUB_OUTPUT | |
echo "nrba_license_key=${{ secrets.INTERNAL_LICENSE_KEY }}" >> $GITHUB_OUTPUT | |
echo "nrba_ab_app_id=${{ secrets.INTERNAL_AB_DEV_APPLICATION_ID }}" >> $GITHUB_OUTPUT | |
echo "nrba_ab_license_key=${{ secrets.INTERNAL_AB_LICENSE_KEY }}" >> $GITHUB_OUTPUT | |
else | |
echo "Invalid environment select" | |
exit 1 | |
fi | |
- name: Deploy prod a/b script | |
uses: ./.github/actions/internal-ab | |
with: | |
nr_environment: ${{ inputs.nr_environment }} | |
nrba_released_script_url: ${{ inputs.nrba_released_script_url }} | |
nrba_latest_script_url: ${{ inputs.nrba_latest_script_url }} | |
nrba_app_id: ${{ steps.target-environment.outputs.nrba_app_id }} | |
nrba_license_key: ${{ steps.target-environment.outputs.nrba_license_key }} | |
nrba_ab_app_id: ${{ steps.target-environment.outputs.nrba_ab_app_id }} | |
nrba_ab_license_key: ${{ steps.target-environment.outputs.nrba_ab_license_key }} | |
aws_access_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
aws_role: ${{ secrets.AWS_ROLE_ARN }} | |
aws_bucket_name: ${{ secrets.AWS_BUCKET }} | |
fastly_key: ${{ secrets.FASTLY_PURGE_KEY }} |