Skip to content
#name: Update Swagger UI
#on:
# schedule:
# - cron: '0 10 * * *'
# workflow_dispatch:
#
#jobs:
# updateSwagger:
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v4
# - name: Get Latest Swagger UI Release
# id: swagger-ui
# run: |
# release_tag=$(curl -sL https://api.github.com/repos/swagger-api/swagger-ui/releases/latest | jq -r ".tag_name")
# echo "release_tag=$release_tag" >> $GITHUB_OUTPUT
# current_tag=$(<swagger-ui.version)
# echo "current_tag=$current_tag" >> $GITHUB_OUTPUT
# - name: Update Swagger UI
# if: steps.swagger-ui.outputs.current_tag != steps.swagger-ui.outputs.release_tag
# env:
# RELEASE_TAG: ${{ steps.swagger-ui.outputs.release_tag }}
# SWAGGER_YAML: "smart-contract-verifier.yaml"
# run: |
# # Delete the dist directory and index.html
# rm -fr dist index.html
# # Download the release
# curl -sL -o $RELEASE_TAG https://api.github.com/repos/swagger-api/swagger-ui/tarball/$RELEASE_TAG
# # Extract the dist directory
# tar -xzf $RELEASE_TAG --strip-components=1 $(tar -tzf $RELEASE_TAG | head -1 | cut -f1 -d"/")/dist
# rm $RELEASE_TAG
# # Move index.html to the root
# mv dist/index.html .
# # Fix references in dist/swagger-initializer and index.html
# sed -i "s|https://petstore.swagger.io/v2/swagger.json|$SWAGGER_YAML|g" dist/swagger-initializer.js
# sed -i "s|href=\"./|href=\"dist/|g" index.html
# sed -i "s|src=\"./|src=\"dist/|g" index.html
# sed -i "s|href=\"index|href=\"dist/index|g" index.html
# # Update current release
# echo ${{ steps.swagger-ui.outputs.release_tag }} > swagger-ui.version
# - name: Create Pull Request
# uses: peter-evans/create-pull-request@v6
# with:
# commit-message: Update swagger-ui to ${{ steps.swagger-ui.outputs.release_tag }}
# title: Update SwaggerUI to ${{ steps.swagger-ui.outputs.release_tag }}
# body: |
# Updates [swagger-ui][1] to ${{ steps.swagger-ui.outputs.release_tag }}
#
# Auto-generated by [create-pull-request][2]
#
# [1]: https://github.com/swagger-api/swagger-ui
# [2]: https://github.com/peter-evans/create-pull-request
# labels: dependencies, automated pr
# branch: swagger-ui-updates