Skip to content

Store metadata version. #39

Store metadata version.

Store metadata version. #39

Workflow file for this run

name: Scheduled Tests
on:
push: {}
pull_request:
branches:
- add-scheduled-tests
# on: workflow_dispatch
# on:
# schedule:
# - cron: '58 */3 * * *'
jobs:
run_app_tests:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
# python-version: [ "3.7", "3.8", "3.9", "3.10", "3.11" ]
python-version: [ "3.11" ]
steps:
- name: Get metadata version from API
id: metadataVersion
uses: satak/webrequest-action@master
with:
url: https://mygeneset.info/metadata
method: GET
- name: Show mygeneset metadata version from API
run: |
echo "${{fromJson(steps.metadataVersion.outputs.output).data.build_date}}"
########
- name: Restore metadata version variable from Cache
uses: actions/cache@v3
with:
# path: ${{ github.workspace }}/.cache/mygeneset-metadata-version
# key: ${{ runner.os }}-mygeneset-metadata-version
path: ${{ github.workspace }}/.cache/
key: mygeneset-metadata-version
- name: Load mygeneset metadata version from Cache
run: |
file_path="${{ github.workspace }}/.cache/mygeneset-metadata-version.cache"
# Check if the file exists
if [ -f "$file_path" ]; then
# Read the file and store its content in the restored_value variable
MYGENESET_METADATA_VERSION=$(cat "$file_path")
echo "Restored Value: $MYGENESET_METADATA_VERSION"
else
echo "File does not exist or cannot be read."
MYGENESET_METADATA_VERSION=
fi
- name: Compare metadata versions
id: compare
run: |
version_from_api=${{ fromJson(steps.metadataVersion.outputs.output).data.build_date }}
version_from_cache=${{ env.MYGENESET_METADATA_VERSION }}
echo "version_from_api"
echo $version_from_api
echo "version_from_cache"
echo $version_from_cache
if [ "$version_from_api" = "$version_from_cache" ]; then
echo "No new version identified. Stopping workflow."
echo "::error::Values are the same."
exit 0
else
echo "New version identified. Proceeding with the workflow."
fi
- name: Set metadata version variable
run: |
echo "MYGENESET_METADATA_VERSION=${{fromJson(steps.metadataVersion.outputs.output).data.build_date}}" >> $GITHUB_ENV
- name: Create metadata version file in Cache folder
run: |
mkdir ${{ github.workspace }}/.cache/
echo "${{fromJson(steps.metadataVersion.outputs.output).data.build_date}}" >> ${{ github.workspace }}/.cache/mygeneset-metadata-version.cache
- name: Store metadata version variable in Cache
uses: actions/cache@v3
with:
# path: ${{ github.workspace }}/.cache/mygeneset-metadata-version
# key: ${{ runner.os }}-mygeneset-metadata-version
# restore-keys: |
# - ${{ runner.os }}-mygeneset-metadata-version
path: ${{ github.workspace }}/.cache
key: mygeneset-metadata-version
##############
- name: Checkout source
uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Upgrade pip
run: pip install --upgrade pip
- name: Install dependencies
run: pip install -r requirements_web.txt
- name: Install pytest
run: pip install pytest
- name: Install pytest-slack
run: pip install pytest-slack
- name: Run pytest and generate report
run: pytest src/tests/test_remote.py --slack_hook=${{ secrets.SLACK_WEBHOOK_URL }} --slack_channel=observability-test
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}