Skip to content

Automated commit by github action: 27700197374 #743

Automated commit by github action: 27700197374

Automated commit by github action: 27700197374 #743

name: "Build Bundled Specifications"
on:
push:
branches:
- main
paths:
- idn/sailpoint-api.root.yaml
- idn/apis/**
- idn/sailpoint-api.v3.yaml
- idn/v3/**
- idn/sailpoint-api.beta.yaml
- idn/beta/**
- idn/sailpoint-api.v2024.yaml
- idn/v2024/**
- idn/sailpoint-api.v2025.yaml
- idn/v2025/**
- idn/sailpoint-api.v2026.yaml
- idn/v2026/**
- nerm/**
workflow_dispatch:
permissions:
id-token: write # This is required for requesting the JWT
contents: write
pull-requests: write
jobs:
dereference_spec:
runs-on: ubuntu-latest
env:
GH_TOKEN: ${{ github.token }}
steps:
- name: Configure AWS credentials from Test account
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: arn:aws:iam::176038645705:role/github-action-role
role-session-name: deploy-developer-site-infra-to-aws
aws-region: us-east-1
- name: Checkout PR branch
uses: actions/checkout@v6
- name: Set up Node
uses: actions/setup-node@v6
with:
node-version: "24"
- name: Install redocly and postman
run: |
npm install -g @redocly/cli
npm install -g openapi-to-postmanv2
npm install --prefix scripts
- name: Dereference API Specification and build Postman collection
run: |
# idn (rebuild sailpoint-api.root.yaml from apis/ partitions, then bundle to sailpoint-api.yaml)
node scripts/build-idn-root-spec.js
# idn (combined versioned spec)
redocly bundle idn/sailpoint-api.root.yaml --ext yaml -o dereferenced/deref-sailpoint-api.yaml
redocly bundle idn/sailpoint-api.root.yaml --ext json -o dereferenced/deref-sailpoint-api.json
# v3
redocly bundle idn/sailpoint-api.v3.yaml --ext json -o dereferenced/deref-sailpoint-api.v3.json
redocly bundle idn/sailpoint-api.v3.yaml --ext yaml -o dereferenced/deref-sailpoint-api.v3.yaml
# beta
redocly bundle idn/sailpoint-api.beta.yaml --ext json -o dereferenced/deref-sailpoint-api.beta.json
redocly bundle idn/sailpoint-api.beta.yaml --ext yaml -o dereferenced/deref-sailpoint-api.beta.yaml
# v2024
redocly bundle idn/sailpoint-api.v2024.yaml --ext yaml -o dereferenced/deref-sailpoint-api.v2024.yaml
redocly bundle idn/sailpoint-api.v2024.yaml --ext json -o dereferenced/deref-sailpoint-api.v2024.json
# v2025
redocly bundle idn/sailpoint-api.v2025.yaml --ext yaml -o dereferenced/deref-sailpoint-api.v2025.yaml
redocly bundle idn/sailpoint-api.v2025.yaml --ext json -o dereferenced/deref-sailpoint-api.v2025.json
# v2026
redocly bundle idn/sailpoint-api.v2026.yaml --ext yaml -o dereferenced/deref-sailpoint-api.v2026.yaml
redocly bundle idn/sailpoint-api.v2026.yaml --ext json -o dereferenced/deref-sailpoint-api.v2026.json
# nerm
redocly bundle nerm/openapi.yaml --ext yaml -o dereferenced/deref-sailpoint-api.nerm.yaml
redocly bundle nerm/openapi.yaml --ext json -o dereferenced/deref-sailpoint-api.nerm.json
redocly bundle nerm/v2025/v2025.yaml --ext yaml -o dereferenced/deref-sailpoint-api.nerm.v2025.yaml
redocly bundle nerm/v2025/v2025.yaml --ext json -o dereferenced/deref-sailpoint-api.nerm.v2025.json
# build postman collections
openapi2postmanv2 -s dereferenced/deref-sailpoint-api.yaml -o postman/collections/sailpoint-api-isc.json -p -c postman-script/openapi2postman-config.json
openapi2postmanv2 -s dereferenced/deref-sailpoint-api.v3.yaml -o postman/collections/sailpoint-api-v3.json -p -c postman-script/openapi2postman-config.json
openapi2postmanv2 -s dereferenced/deref-sailpoint-api.beta.yaml -o postman/collections/sailpoint-api-beta.json -p -c postman-script/openapi2postman-config.json
openapi2postmanv2 -s dereferenced/deref-sailpoint-api.nerm.yaml -o postman/collections/sailpoint-api-nerm.json -p -c postman-script/openapi2postman-config.json
openapi2postmanv2 -s dereferenced/deref-sailpoint-api.nerm.v2025.yaml -o postman/collections/sailpoint-api-nerm-v2025.json -p -c postman-script/openapi2postman-config.json
openapi2postmanv2 -s dereferenced/deref-sailpoint-api.v2024.yaml -o postman/collections/sailpoint-api-v2024.json -p -c postman-script/openapi2postman-config.json
openapi2postmanv2 -s dereferenced/deref-sailpoint-api.v2025.yaml -o postman/collections/sailpoint-api-v2025.json -p -c postman-script/openapi2postman-config.json
openapi2postmanv2 -s dereferenced/deref-sailpoint-api.v2026.yaml -o postman/collections/sailpoint-api-v2026.json -p -c postman-script/openapi2postman-config.json
# modify collections
node postman-script/modify-collection.js postman/collections/sailpoint-api-isc.json
node postman-script/modify-collection.js postman/collections/sailpoint-api-v3.json
node postman-script/modify-collection.js postman/collections/sailpoint-api-beta.json
node postman-script/modify-collection.js postman/collections/sailpoint-api-v2024.json
node postman-script/modify-collection.js postman/collections/sailpoint-api-v2025.json
node postman-script/modify-collection.js postman/collections/sailpoint-api-v2026.json
node postman-script/modify-collection.js postman/collections/sailpoint-api-nerm.json
node postman-script/modify-collection.js postman/collections/sailpoint-api-nerm-v2025.json
cd postman-script/update-by-folder-ts
echo "POSTMAN_API_KEY=${{ secrets.POSTMAN_API_KEY }}" > .env
npm ci
npm run isc
npm run v3
npm run beta
npm run v2024
npm run v2025
npm run v2026
npm run nerm
npm run nerm-v2025
- name: Configure Git
run: |
git config --global user.name 'developer-relations-sp'
git config --global user.email 'devrel-service@sailpoint.com'
- name: Create release for updated specifications
run: |
node scripts/simple-release-automation.js
- uses: stefanzweifel/git-auto-commit-action@v7
with:
commit_message: "Update dereferenced specifications"
commit_author: developer-relations-sp <devrel-service@sailpoint.com>