diff --git a/.github/workflows/manual-python-package-conda.yml b/.github/workflows/manual-python-package-conda.yml new file mode 100644 index 0000000..0301d77 --- /dev/null +++ b/.github/workflows/manual-python-package-conda.yml @@ -0,0 +1,49 @@ +name: Manual Python Package using Conda + +on: workflow_dispatch + +jobs: + build-linux: + runs-on: ubuntu-latest + strategy: + max-parallel: 5 + + steps: + - uses: actions/checkout@v3 + - name: Set up Python 3.10 + uses: actions/setup-python@v3 + with: + python-version: '3.10' + + - name: Add conda to system path + run: | + # $CONDA is an environment variable pointing to the root of the miniconda directory + echo $CONDA/bin >> $GITHUB_PATH + + - name: Install dependencies + run: | + conda env update --file environment.yml --name base + + - name: Lint with flake8 + run: | + conda install flake8 + # stop the build if there are Python syntax errors or undefined names + flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics + # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide + flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + + - name: Test with pytest + run: | + conda install pytest + pytest + + - name: Create Conda Env. from environment.yml file + run: $CONDA/bin/conda env update --file conda/environment.yml --name base + + - name: Install Conda-Forge Client + run: conda install -c conda-forge conda-forge-ci-setup -y + + - name: Build and Upload Package + env: + CONDA_FORGE_TOKEN: ${{ secrets.CONDA_INITIALIZE }} + run: conda smithy ci # using smithy