-
Notifications
You must be signed in to change notification settings - Fork 3
43 lines (35 loc) · 1.19 KB
/
uniprot_s3_dump.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
name: Uniprot to S3
on:
# schedule:
# - cron: '0 0 1 * *' # Runs on the 1st of every month at midnight
workflow_dispatch: # Allows manual triggering
jobs:
fetch-and-upload:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Install Poetry
uses: snok/install-poetry@v1
- name: Install project dependencies
run: poetry install --no-interaction
- name: Install additional dependencies
run: |
poetry add requests
poetry add boto3
poetry add aws
- name: Fetch data from Uniprot API
run: poetry run kg get-via-api -a uniprot
- name: Upload to S3
uses: aws-actions/configure-aws-credentials@v1
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1
- name: Sync files to S3 bucket
run: |
poetry run aws s3 sync data/raw/uniprot/test s3://${{ secrets.AWS_BUCKET_NAME }} --delete