Refresh the refreshToken #265
Workflow file for this run
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 will build and run the application for oasdiff/oasdiff-action/breaking@main | |
# For more information see: https://github.com/oasdiff/oasdiff-action | |
name: OpenAPI breaking changes check | |
on: [push, pull_request] | |
env: | |
MAVEN_ARGS: '-B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn' | |
jobs: | |
opeanpi: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
persist-credentials: false | |
- name: Checkout core | |
run: git clone --depth=50 --branch=develop https://github.com/informatici/openhospital-core.git openhospital-core | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
distribution: 'zulu' | |
java-version: 17 | |
java-package: jdk | |
- name: Install core | |
run: cd openhospital-core && mvn install -DskipTests=true && cd .. | |
- name: Generate JWT Token | |
id: jwt | |
run: echo "token=7DlyD1SHR5pCa4HGgTLWSYm8YQ7oRL1wpPbxyjWyHU44vUrqrooRu3lHVFSXWChesc" >> $GITHUB_OUTPUT | |
- name: Store branch name | |
id: extract_branch | |
run: | | |
if [[ "${GITHUB_EVENT_NAME}" == "push" ]]; then | |
echo "branch=$(echo ${GITHUB_REF##*/})" >> $GITHUB_OUTPUT | |
elif [[ "${GITHUB_EVENT_NAME}" == "pull_request" ]]; then | |
echo "branch=$(echo ${GITHUB_HEAD_REF})" >> $GITHUB_OUTPUT | |
else | |
echo "branch=INVALID_EVENT_BRANCH_UNKNOWN" >> $GITHUB_OUTPUT | |
fi | |
- name: Build with Maven | |
run: | | |
cp rsc/database.properties.dist rsc/database.properties | |
cp rsc/log4j2-spring.properties.dist rsc/log4j2-spring.properties | |
cp rsc/settings.properties.dist rsc/settings.properties | |
sed -e "s/JWT_TOKEN_SECRET/${{ steps.jwt.outputs.token }}/g" -e "s/API_HOST/localhost/g" -e "s/API_PORT/8080/g" rsc/application.properties.dist > rsc/application.properties | |
mvn install -DskipTests=true | |
echo ${{ steps.extract_branch.outputs.branch }} | |
- name: Run API | |
run: | | |
cd target | |
java -cp "openhospital-api-0.1.0.jar:rsc/:static/" org.springframework.boot.loader.launch.JarLauncher & | |
sleep 60 | |
- name: Generate OpenAPI yaml | |
run: mvn springdoc-openapi:generate -Dspringdoc.outputFileName=oh_rev.yaml | |
# Step 1: Check if oh_rev.yaml differs from the committed version | |
- name: Install yq | |
run: | | |
sudo wget https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -O /usr/bin/yq | |
sudo chmod +x /usr/bin/yq | |
- name: Install jq | |
run: sudo apt-get install -y jq | |
- name: Convert to JSON and sort | |
run: | | |
yq eval -o=json openapi/oh_rev.yaml > oh_rev.json | |
yq eval -o=json openapi/oh.yaml > oh.json | |
jq --sort-keys . oh_rev.json > sorted_oh_rev.json | |
jq --sort-keys . oh.json > sorted_oh.json | |
- name: Compare JSON files | |
if: github.event_name == 'pull_request' | |
run: | | |
if diff sorted_oh_rev.json sorted_oh.json; then | |
echo "No changes in OpenAPI spec. Everything is up to date." | |
else | |
echo "The OpenAPI spec has changed. Please update the committed version." | |
exit 1 | |
fi | |
# Step 2: Check for breaking changes between committed oh.yaml and oh_rev.yaml | |
- name: Run OpenAPI Spec breaking action | |
id: oasdiff | |
uses: oasdiff/oasdiff-action/breaking@main | |
with: | |
base: openapi/oh.yaml # Committed version in the repository | |
revision: openapi/oh_rev.yaml # Generated version | |
# fail-on-diff: false | |
- name: Show breaking changes output | |
run: | | |
echo "Breaking changes output: ${{ steps.oasdiff.outputs.breaking }}" | |
if [[ "${{ steps.oasdiff.outputs.breaking }}" != "" ]]; then | |
echo "Warning: Breaking changes detected." | |
fi |