mirror of
https://github.com/tdlight-team/tdlight-telegram-bot-api.git
synced 2024-12-28 21:55:51 +01:00
Create update-swagger.yml
Needs to be tested first
This commit is contained in:
parent
42dadaed39
commit
d6b546dfa2
56
.github/workflows/update-swagger.yml
vendored
Normal file
56
.github/workflows/update-swagger.yml
vendored
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
name: Update Swagger UI
|
||||||
|
on:
|
||||||
|
schedule:
|
||||||
|
- cron: '0 10 * * *'
|
||||||
|
repository_dispatch:
|
||||||
|
types: [update-swagger-ui]
|
||||||
|
jobs:
|
||||||
|
updateSwagger:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Get Latest Swagger UI Release
|
||||||
|
id: swagger-ui
|
||||||
|
run: |
|
||||||
|
echo ::set-output name=release_tag::$(curl -sL https://api.github.com/repos/swagger-api/swagger-ui/releases/latest | jq -r ".tag_name")
|
||||||
|
echo ::set-output name=current_tag::$(<docs/swagger-ui.version)
|
||||||
|
- 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: "tdlight-api-openapi.yaml"
|
||||||
|
TITLE: "tdlight Telegram bot API docs"
|
||||||
|
run: |
|
||||||
|
# move to the docs directory
|
||||||
|
cd docs
|
||||||
|
# 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 index.html
|
||||||
|
sed -i "s|https://petstore.swagger.io/v2/swagger.json|$SWAGGER_YAML|g" index.html
|
||||||
|
sed -i "s|href=\"./|href=\"dist/|g" docs/index.html
|
||||||
|
sed -i "s|src=\"./|src=\"dist/|g" index.html
|
||||||
|
sed -i "s|dist/favicon|icons/favicon|g" index.html
|
||||||
|
sed -i "s|<title>.*</title>|<title>$TITLE</title>|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@v3
|
||||||
|
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
|
Loading…
Reference in New Issue
Block a user