Skip to content
CI/CD Inventory

usegalaxy-eu/ena-upload-cli (opens in new tab)

3 workflows

Triggers

push pull_request

Jobs

Jobs for Python application
Job Runs on Steps Actions used
build ${{ matrix.os }} 8
actions/checkout@v4 actions/setup-python@v5 actions/upload-artifact@v4
Raw YAML
# This workflow will install Python dependencies, run tests and lint with a single version of Python
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions

name: Python application

on:
  push:
    branches: [ master ]
  pull_request:
    branches: [ master ]

jobs:
  
  build:
    strategy:
      matrix:
        os: [ubuntu-latest, macos-latest, windows-latest]
        version: ["3.8", "3.13"]
    runs-on: ${{ matrix.os }}
    steps:
    - uses: actions/checkout@v4
    - name: Set up Python
      uses: actions/setup-python@v5
      with:
        python-version: ${{ matrix.version }}
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install .
    - name: Test base functionality tool
      run: |
        ena-upload-cli --help
    - name: Create credentials file
      run: |
        echo "username: ${{ secrets.ENA_USERNAME }}" >> .secrets.yaml
        echo "password: ${{ secrets.ENA_PASSWORD }}" >> .secrets.yml
    - name: Test submission in --draft mode
      run: |
        ena-upload-cli --action add --draft --dev --center TEST --data example_data/ENA_TEST1.R1.fastq.gz example_data/ENA_TEST2.R1.fastq.gz example_data/ENA_TEST2.R2.fastq.gz --checklist ERC000033 --secret .secret.yml --xlsx example_tables/ENA_excel_example_ERC000033.xlsx 
    - name: Run Python to get temp directory
      run: |
        echo "TEMP_DIR=$(python -c 'import tempfile; print(tempfile.gettempdir())')" >> $GITHUB_ENV
    - uses: actions/upload-artifact@v4
      name: Output XMLs for ${{ matrix.os }} Python ${{ matrix.os }}
      with:
        name: ena-upload-cli_output_${{ matrix.os }}_python_${{ matrix.version }}
        path: ${{ env.TEMP_DIR }}/*.xml

Last fetched:

Triggers

release workflow_dispatch

Jobs

Jobs for Upload Python Package
Job Runs on Steps Actions used
Build and publish Python 🐍 distribution 📦 to PyPI ubuntu-latest 5
actions/checkout@v3 actions/setup-python@v4 pypa/gh-action-pypi-publish@release/v1
Raw YAML
# This workflows will upload a Python Package using Twine when a release is created
# For more information see: https://help.github.com/en/actions/language-and-framework-guides/using-python-with-github-actions#publishing-to-package-registries

name: Upload Python Package

on:
  release:
    types: [created]
  workflow_dispatch:

jobs:
  build-n-publish:
    name: Build and publish Python 🐍 distribution 📦 to PyPI 
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3
      - name: Set up Python
        uses: actions/setup-python@v4
        with:
          python-version: "3.x"
      - name: Install pypa/build
        run: >-
          python3 -m
          pip install
          build
          --user
      - name: Build a binary wheel and a source tarball
        run: >-
          python3 -m
          build
          --sdist
          --wheel
          --outdir dist/
      - name: Publish distribution 📦 to PyPI
        uses: pypa/gh-action-pypi-publish@release/v1
        with:
          verbose: true
          user: __token__
          password: ${{ secrets.PYPI_PASSWORD }}

Last fetched:

Triggers

schedule workflow_dispatch

Jobs

Jobs for Updating checklists and xsd templates
Job Runs on Steps Actions used
update ubuntu-22.04 8
actions/checkout@v4 actions/setup-python@v5 peter-evans/create-pull-request@v7
Raw YAML

name: Updating checklists and xsd templates

on:
  schedule:
    - cron:  '0 13 * * 1'
  workflow_dispatch:

jobs:
  update:
    runs-on: ubuntu-22.04
    steps:
    - uses: actions/checkout@v4
    - name: Set up Python 3.11
      uses: actions/setup-python@v5
      with:
        python-version: "3.11"
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install jinja2 requests lxml
    - name: Run xml converter
      run: python var/xml_converter.py
    - name: Run xsd converter
      run: python var/xsd_converter.py
    - name: Show differences
      run: 'git diff --stat'
    - name: Create Pull Request
      id: cpr
      uses: peter-evans/create-pull-request@v7
      with:
        token: ${{ secrets.GITHUB_TOKEN }}
        commit-message: Update ENA Sample Checklists 
        title: 'Automatic update of ENA Sample Checklists'
        body: |
          This PR is automatically generated based on changes in the ena_upload/templates/ENA_template_samples_ERC0000XX.xml files.

          Please verify if these changes are valid.
        labels: |
          automatic PR
        reviewers: bedroesb
        branch: checklist_update
        base: master

    - name: Check output
      run: |
        echo "Pull Request Number - ${{ steps.cpr.outputs.pull-request-number }}"

Last fetched: