-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
add generate dump action for 1st v2 release
- Loading branch information
1 parent
1cb6734
commit bffb1c2
Showing
1 changed file
with
106 additions
and
0 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,106 @@ | ||
name: Create data dump v2 first release | ||
description: Generates a data dump based on an input file from ror-data-test and uploades the result to ror-data. For use during the first v1 release only. | ||
on: | ||
workflow_dispatch: | ||
inputs: | ||
schema-version: | ||
required: true | ||
description: Release schema version | ||
type: choice | ||
options: | ||
- v1 | ||
- v2 | ||
new-release: | ||
type: string | ||
description: Name of the directory that the new release is located in | ||
prev-release: | ||
type: string | ||
description: Name of the existing release zip file to base this data dump from | ||
|
||
jobs: | ||
generate-dump: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Echo message | ||
id: echo_message | ||
run: echo "Github action triggered with inputs new release ${{github.event.inputs.new-release}} and previous release ${{github.event.inputs.prev-release}}" | ||
- name: checkout ror records repo | ||
uses: actions/checkout@v2 | ||
with: | ||
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} | ||
path: ./ror-records-test | ||
- name: checkout ror data test repo | ||
uses: actions/checkout@v2 | ||
with: | ||
repository: ror-community/ror-data-test | ||
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} | ||
path: ./ror-data-test | ||
- name: checkout ror data prod repo | ||
uses: actions/checkout@v2 | ||
with: | ||
repository: ror-community/ror-data | ||
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} | ||
path: ./ror-data-prod | ||
- name: copy previous data dump file | ||
id: copyprevdump | ||
run: | | ||
cp -R ./ror-data-test/${{github.event.inputs.prev-release}}.zip ./ror-records-test | ||
- name: checkout ror curation ops repo | ||
uses: actions/checkout@v2 | ||
with: | ||
repository: ror-community/curation_ops | ||
token: ${{ secrets.PERSONAL_ACCESS_TOKEN }} | ||
ref: v2-crosswalk | ||
path: ./curation_ops | ||
- name: Set up Python environment | ||
uses: actions/setup-python@v2 | ||
with: | ||
python-version: "3.8" | ||
- name: execute script | ||
id: gendumpscript | ||
run: | | ||
cd ./curation_ops/generate_dump/ | ||
if [[ ${{ github.event.inputs.schema-version }} == 'v1' ]]; then | ||
python generate_dump.py -r ${{github.event.inputs.new-release}} -e ${{github.event.inputs.prev-release}} -i '../../ror-records-test' -o '../../ror-records-prod' -v 1 | ||
fi | ||
if [[ ${{ github.event.inputs.schema-version }} == 'v2' ]]; then | ||
python generate_dump.py -r ${{github.event.inputs.new-release}} -e ${{github.event.inputs.prev-release}} -i '../../ror-records-test' -o '../../ror-records-prod' -v 2 | ||
fi | ||
- name: cat error file | ||
if: ${{ steps.gendumpscript.outcome != 'success'}} | ||
run: | | ||
echo "ERRORS found:" | ||
cat errors.log | ||
- name: copy new data dump file | ||
id: copynewdump | ||
run: | | ||
yes | cp -rf ./ror-records-prod/${{github.event.inputs.new-release}}*.zip ./ror-data-prod | ||
- name: commit dump file | ||
id: commitdumpfile | ||
if: ${{ steps.copynewdump.outcome == 'success'}} | ||
run: | | ||
cd ./ror-data-prod | ||
git config --local user.email "[email protected]" | ||
git config --local user.name "ror-bot" | ||
git add *.zip | ||
git commit -m "add new data dump file" | ||
git push origin main | ||
- name: commit changed files | ||
if: ${{ steps.commitdumpfile.outcome == 'success'}} | ||
run: | | ||
pwd | ||
cd ./ror-records-test | ||
git config --local user.email "[email protected]" | ||
git config --local user.name "ror-bot" | ||
git add ${{github.event.inputs.new-release}}/v1/ | ||
git commit -m "add generated v1 files" | ||
git push origin main | ||
- name: Notify Slack | ||
if: always() | ||
uses: edge/simple-slack-notify@master | ||
env: | ||
SLACK_WEBHOOK_URL: ${{ secrets.CURATOR_SLACK_WEBHOOK_URL }} | ||
with: | ||
channel: '#ror-curation-releases' | ||
color: 'good' | ||
text: 'DEV Data dump ${{github.event.inputs.new-release}} generation status: ${{ steps.commitdumpfile.outcome }}. Using base version ${{ github.event.inputs.schema-version }}. Please check: ${env.GITHUB_SERVER_URL}/${env.GITHUB_REPOSITORY}/actions/runs/${env.GITHUB_RUN_ID}' |