Store metadata version. #40
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
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 | |
echo $(cat ${{ 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 }} |