Re-render the feedstock after CI registration.
This commit is contained in:
+45
@@ -0,0 +1,45 @@
|
|||||||
|
# This file was generated automatically from conda-smithy. To update this configuration,
|
||||||
|
# update the conda-forge.yml and/or the recipe/meta.yaml.
|
||||||
|
# -*- mode: yaml -*-
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- job: linux
|
||||||
|
pool:
|
||||||
|
vmImage: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
linux_64_:
|
||||||
|
CONFIG: linux_64_
|
||||||
|
UPLOAD_PACKAGES: 'True'
|
||||||
|
DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64
|
||||||
|
timeoutInMinutes: 360
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- script: |
|
||||||
|
rm -rf /opt/ghc
|
||||||
|
df -h
|
||||||
|
displayName: Manage disk space
|
||||||
|
|
||||||
|
# configure qemu binfmt-misc running. This allows us to run docker containers
|
||||||
|
# embedded qemu-static
|
||||||
|
- script: |
|
||||||
|
docker run --rm --privileged multiarch/qemu-user-static:register --reset --credential yes
|
||||||
|
ls /proc/sys/fs/binfmt_misc/
|
||||||
|
condition: not(startsWith(variables['CONFIG'], 'linux_64'))
|
||||||
|
displayName: Configure binfmt_misc
|
||||||
|
|
||||||
|
- script: |
|
||||||
|
export CI=azure
|
||||||
|
export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME
|
||||||
|
export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME})
|
||||||
|
if [[ "${BUILD_REASON:-}" == "PullRequest" ]]; then
|
||||||
|
export IS_PR_BUILD="True"
|
||||||
|
else
|
||||||
|
export IS_PR_BUILD="False"
|
||||||
|
fi
|
||||||
|
.scripts/run_docker_build.sh
|
||||||
|
displayName: Run docker build
|
||||||
|
env:
|
||||||
|
BINSTAR_TOKEN: $(BINSTAR_TOKEN)
|
||||||
|
FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN)
|
||||||
|
STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN)
|
||||||
Generated
+6
@@ -0,0 +1,6 @@
|
|||||||
|
This file is automatically generated by conda-smithy. If any
|
||||||
|
particular build configuration is expected, but it is not found,
|
||||||
|
please make sure all dependencies are satisfiable. To add/modify any
|
||||||
|
matrix elements, you should create/change conda-smithy's input
|
||||||
|
recipe/conda_build_config.yaml and re-render the recipe, rather than
|
||||||
|
editing these files directly.
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
cdt_name:
|
||||||
|
- cos6
|
||||||
|
channel_sources:
|
||||||
|
- conda-forge
|
||||||
|
channel_targets:
|
||||||
|
- conda-forge main
|
||||||
|
docker_image:
|
||||||
|
- quay.io/condaforge/linux-anvil-cos7-x86_64
|
||||||
Generated
+25
@@ -0,0 +1,25 @@
|
|||||||
|
# This file was generated automatically from conda-smithy. To update this configuration,
|
||||||
|
# update the conda-forge.yml and/or the recipe/meta.yaml.
|
||||||
|
# -*- mode: yaml -*-
|
||||||
|
|
||||||
|
version: 2
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
working_directory: ~/test
|
||||||
|
machine:
|
||||||
|
image: ubuntu-2004:current
|
||||||
|
steps:
|
||||||
|
- run:
|
||||||
|
# The Circle-CI build should not be active, but if this is not true for some reason, do a fast finish.
|
||||||
|
command: exit 0
|
||||||
|
|
||||||
|
workflows:
|
||||||
|
version: 2
|
||||||
|
build_and_test:
|
||||||
|
jobs:
|
||||||
|
- build:
|
||||||
|
filters:
|
||||||
|
branches:
|
||||||
|
ignore:
|
||||||
|
- /.*/
|
||||||
Generated
+27
@@ -0,0 +1,27 @@
|
|||||||
|
* text=auto
|
||||||
|
|
||||||
|
*.patch binary
|
||||||
|
*.diff binary
|
||||||
|
meta.yaml text eol=lf
|
||||||
|
build.sh text eol=lf
|
||||||
|
bld.bat text eol=crlf
|
||||||
|
|
||||||
|
# github helper pieces to make some files not show up in diffs automatically
|
||||||
|
.azure-pipelines/* linguist-generated=true
|
||||||
|
.circleci/* linguist-generated=true
|
||||||
|
.ci_support/README linguist-generated=true
|
||||||
|
.drone/* linguist-generated=true
|
||||||
|
.drone.yml linguist-generated=true
|
||||||
|
.github/* linguist-generated=true
|
||||||
|
.travis/* linguist-generated=true
|
||||||
|
.appveyor.yml linguist-generated=true
|
||||||
|
.gitattributes linguist-generated=true
|
||||||
|
.gitignore linguist-generated=true
|
||||||
|
.travis.yml linguist-generated=true
|
||||||
|
.scripts/* linguist-generated=true
|
||||||
|
.woodpecker.yml linguist-generated=true
|
||||||
|
LICENSE.txt linguist-generated=true
|
||||||
|
README.md linguist-generated=true
|
||||||
|
azure-pipelines.yml linguist-generated=true
|
||||||
|
build-locally.py linguist-generated=true
|
||||||
|
shippable.yml linguist-generated=true
|
||||||
Generated
+1
@@ -0,0 +1 @@
|
|||||||
|
* @ocefpaf
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
on:
|
||||||
|
status: {}
|
||||||
|
check_suite:
|
||||||
|
types:
|
||||||
|
- completed
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
automerge-action:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
name: automerge
|
||||||
|
steps:
|
||||||
|
- name: checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: automerge-action
|
||||||
|
id: automerge-action
|
||||||
|
uses: conda-forge/automerge-action@main
|
||||||
|
with:
|
||||||
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
rerendering_github_token: ${{ secrets.RERENDERING_GITHUB_TOKEN }}
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
on: repository_dispatch
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
webservices:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
name: webservices
|
||||||
|
steps:
|
||||||
|
- name: webservices
|
||||||
|
id: webservices
|
||||||
|
uses: conda-forge/webservices-dispatch-action@main
|
||||||
|
with:
|
||||||
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
rerendering_github_token: ${{ secrets.RERENDERING_GITHUB_TOKEN }}
|
||||||
Generated
+3
@@ -0,0 +1,3 @@
|
|||||||
|
*.pyc
|
||||||
|
|
||||||
|
build_artifacts
|
||||||
+87
@@ -0,0 +1,87 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here
|
||||||
|
# will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent
|
||||||
|
# changes to this script, consider a proposal to conda-smithy so that other feedstocks can also
|
||||||
|
# benefit from the improvement.
|
||||||
|
|
||||||
|
# -*- mode: jinja-shell -*-
|
||||||
|
|
||||||
|
set -xeuo pipefail
|
||||||
|
export FEEDSTOCK_ROOT="${FEEDSTOCK_ROOT:-/home/conda/feedstock_root}"
|
||||||
|
source ${FEEDSTOCK_ROOT}/.scripts/logging_utils.sh
|
||||||
|
|
||||||
|
|
||||||
|
( endgroup "Start Docker" ) 2> /dev/null
|
||||||
|
|
||||||
|
( startgroup "Configuring conda" ) 2> /dev/null
|
||||||
|
|
||||||
|
export PYTHONUNBUFFERED=1
|
||||||
|
export RECIPE_ROOT="${RECIPE_ROOT:-/home/conda/recipe_root}"
|
||||||
|
export CI_SUPPORT="${FEEDSTOCK_ROOT}/.ci_support"
|
||||||
|
export CONFIG_FILE="${CI_SUPPORT}/${CONFIG}.yaml"
|
||||||
|
|
||||||
|
cat >~/.condarc <<CONDARC
|
||||||
|
|
||||||
|
conda-build:
|
||||||
|
root-dir: ${FEEDSTOCK_ROOT}/build_artifacts
|
||||||
|
pkgs_dirs:
|
||||||
|
- ${FEEDSTOCK_ROOT}/build_artifacts/pkg_cache
|
||||||
|
- /opt/conda/pkgs
|
||||||
|
|
||||||
|
CONDARC
|
||||||
|
|
||||||
|
|
||||||
|
mamba install --update-specs --yes --quiet --channel conda-forge \
|
||||||
|
conda-build pip boa conda-forge-ci-setup=3
|
||||||
|
mamba update --update-specs --yes --quiet --channel conda-forge \
|
||||||
|
conda-build pip boa conda-forge-ci-setup=3
|
||||||
|
|
||||||
|
# set up the condarc
|
||||||
|
setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}"
|
||||||
|
|
||||||
|
source run_conda_forge_build_setup
|
||||||
|
|
||||||
|
# make the build number clobber
|
||||||
|
make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
( endgroup "Configuring conda" ) 2> /dev/null
|
||||||
|
|
||||||
|
if [[ -f "${FEEDSTOCK_ROOT}/LICENSE.txt" ]]; then
|
||||||
|
cp "${FEEDSTOCK_ROOT}/LICENSE.txt" "${RECIPE_ROOT}/recipe-scripts-license.txt"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then
|
||||||
|
if [[ "x${BUILD_OUTPUT_ID:-}" != "x" ]]; then
|
||||||
|
EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --output-id ${BUILD_OUTPUT_ID}"
|
||||||
|
fi
|
||||||
|
conda debug "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \
|
||||||
|
${EXTRA_CB_OPTIONS:-} \
|
||||||
|
--clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml"
|
||||||
|
|
||||||
|
# Drop into an interactive shell
|
||||||
|
/bin/bash
|
||||||
|
else
|
||||||
|
conda mambabuild "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \
|
||||||
|
--suppress-variables ${EXTRA_CB_OPTIONS:-} \
|
||||||
|
--clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml"
|
||||||
|
( startgroup "Validating outputs" ) 2> /dev/null
|
||||||
|
|
||||||
|
validate_recipe_outputs "${FEEDSTOCK_NAME}"
|
||||||
|
|
||||||
|
( endgroup "Validating outputs" ) 2> /dev/null
|
||||||
|
|
||||||
|
( startgroup "Uploading packages" ) 2> /dev/null
|
||||||
|
|
||||||
|
if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then
|
||||||
|
upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
( endgroup "Uploading packages" ) 2> /dev/null
|
||||||
|
fi
|
||||||
|
|
||||||
|
( startgroup "Final checks" ) 2> /dev/null
|
||||||
|
|
||||||
|
touch "${FEEDSTOCK_ROOT}/build_artifacts/conda-forge-build-done-${CONFIG}"
|
||||||
Generated
+35
@@ -0,0 +1,35 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Provide a unified interface for the different logging
|
||||||
|
# utilities CI providers offer. If unavailable, provide
|
||||||
|
# a compatible fallback (e.g. bare `echo xxxxxx`).
|
||||||
|
|
||||||
|
function startgroup {
|
||||||
|
# Start a foldable group of log lines
|
||||||
|
# Pass a single argument, quoted
|
||||||
|
case ${CI:-} in
|
||||||
|
azure )
|
||||||
|
echo "##[group]$1";;
|
||||||
|
travis )
|
||||||
|
echo "$1"
|
||||||
|
echo -en 'travis_fold:start:'"${1// /}"'\\r';;
|
||||||
|
github_actions )
|
||||||
|
echo "::group::$1";;
|
||||||
|
* )
|
||||||
|
echo "$1";;
|
||||||
|
esac
|
||||||
|
} 2> /dev/null
|
||||||
|
|
||||||
|
function endgroup {
|
||||||
|
# End a foldable group of log lines
|
||||||
|
# Pass a single argument, quoted
|
||||||
|
|
||||||
|
case ${CI:-} in
|
||||||
|
azure )
|
||||||
|
echo "##[endgroup]";;
|
||||||
|
travis )
|
||||||
|
echo -en 'travis_fold:end:'"${1// /}"'\\r';;
|
||||||
|
github_actions )
|
||||||
|
echo "::endgroup::";;
|
||||||
|
esac
|
||||||
|
} 2> /dev/null
|
||||||
+105
@@ -0,0 +1,105 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here
|
||||||
|
# will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent
|
||||||
|
# changes to this script, consider a proposal to conda-smithy so that other feedstocks can also
|
||||||
|
# benefit from the improvement.
|
||||||
|
|
||||||
|
source .scripts/logging_utils.sh
|
||||||
|
|
||||||
|
( startgroup "Configure Docker" ) 2> /dev/null
|
||||||
|
|
||||||
|
set -xeo pipefail
|
||||||
|
|
||||||
|
THISDIR="$( cd "$( dirname "$0" )" >/dev/null && pwd )"
|
||||||
|
PROVIDER_DIR="$(basename $THISDIR)"
|
||||||
|
|
||||||
|
FEEDSTOCK_ROOT="$( cd "$( dirname "$0" )/.." >/dev/null && pwd )"
|
||||||
|
RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe"
|
||||||
|
|
||||||
|
if [ -z ${FEEDSTOCK_NAME} ]; then
|
||||||
|
export FEEDSTOCK_NAME=$(basename ${FEEDSTOCK_ROOT})
|
||||||
|
fi
|
||||||
|
|
||||||
|
docker info
|
||||||
|
|
||||||
|
# In order for the conda-build process in the container to write to the mounted
|
||||||
|
# volumes, we need to run with the same id as the host machine, which is
|
||||||
|
# normally the owner of the mounted volumes, or at least has write permission
|
||||||
|
export HOST_USER_ID=$(id -u)
|
||||||
|
# Check if docker-machine is being used (normally on OSX) and get the uid from
|
||||||
|
# the VM
|
||||||
|
if hash docker-machine 2> /dev/null && docker-machine active > /dev/null; then
|
||||||
|
export HOST_USER_ID=$(docker-machine ssh $(docker-machine active) id -u)
|
||||||
|
fi
|
||||||
|
|
||||||
|
ARTIFACTS="$FEEDSTOCK_ROOT/build_artifacts"
|
||||||
|
|
||||||
|
if [ -z "$CONFIG" ]; then
|
||||||
|
set +x
|
||||||
|
FILES=`ls .ci_support/linux_*`
|
||||||
|
CONFIGS=""
|
||||||
|
for file in $FILES; do
|
||||||
|
CONFIGS="${CONFIGS}'${file:12:-5}' or ";
|
||||||
|
done
|
||||||
|
echo "Need to set CONFIG env variable. Value can be one of ${CONFIGS:0:-4}"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "${DOCKER_IMAGE}" ]; then
|
||||||
|
SHYAML_INSTALLED="$(shyaml -h || echo NO)"
|
||||||
|
if [ "${SHYAML_INSTALLED}" == "NO" ]; then
|
||||||
|
echo "WARNING: DOCKER_IMAGE variable not set and shyaml not installed. Trying to parse with coreutils"
|
||||||
|
DOCKER_IMAGE=$(cat .ci_support/${CONFIG}.yaml | grep '^docker_image:$' -A 1 | tail -n 1 | cut -b 3-)
|
||||||
|
if [ "${DOCKER_IMAGE}" = "" ]; then
|
||||||
|
echo "No docker_image entry found in ${CONFIG}. Falling back to quay.io/condaforge/linux-anvil-comp7"
|
||||||
|
DOCKER_IMAGE="quay.io/condaforge/linux-anvil-comp7"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
DOCKER_IMAGE="$(cat "${FEEDSTOCK_ROOT}/.ci_support/${CONFIG}.yaml" | shyaml get-value docker_image.0 quay.io/condaforge/linux-anvil-comp7 )"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir -p "$ARTIFACTS"
|
||||||
|
DONE_CANARY="$ARTIFACTS/conda-forge-build-done-${CONFIG}"
|
||||||
|
rm -f "$DONE_CANARY"
|
||||||
|
|
||||||
|
# Allow people to specify extra default arguments to `docker run` (e.g. `--rm`)
|
||||||
|
DOCKER_RUN_ARGS="${CONDA_FORGE_DOCKER_RUN_ARGS}"
|
||||||
|
if [ -z "${CI}" ]; then
|
||||||
|
DOCKER_RUN_ARGS="-it ${DOCKER_RUN_ARGS}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
( endgroup "Configure Docker" ) 2> /dev/null
|
||||||
|
|
||||||
|
( startgroup "Start Docker" ) 2> /dev/null
|
||||||
|
|
||||||
|
export UPLOAD_PACKAGES="${UPLOAD_PACKAGES:-True}"
|
||||||
|
export IS_PR_BUILD="${IS_PR_BUILD:-False}"
|
||||||
|
docker pull "${DOCKER_IMAGE}"
|
||||||
|
docker run ${DOCKER_RUN_ARGS} \
|
||||||
|
-v "${RECIPE_ROOT}":/home/conda/recipe_root:rw,z,delegated \
|
||||||
|
-v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw,z,delegated \
|
||||||
|
-e CONFIG \
|
||||||
|
-e HOST_USER_ID \
|
||||||
|
-e UPLOAD_PACKAGES \
|
||||||
|
-e IS_PR_BUILD \
|
||||||
|
-e GIT_BRANCH \
|
||||||
|
-e UPLOAD_ON_BRANCH \
|
||||||
|
-e CI \
|
||||||
|
-e FEEDSTOCK_NAME \
|
||||||
|
-e CPU_COUNT \
|
||||||
|
-e BUILD_WITH_CONDA_DEBUG \
|
||||||
|
-e BUILD_OUTPUT_ID \
|
||||||
|
-e BINSTAR_TOKEN \
|
||||||
|
-e FEEDSTOCK_TOKEN \
|
||||||
|
-e STAGING_BINSTAR_TOKEN \
|
||||||
|
"${DOCKER_IMAGE}" \
|
||||||
|
bash \
|
||||||
|
"/home/conda/feedstock_root/${PROVIDER_DIR}/build_steps.sh"
|
||||||
|
|
||||||
|
# verify that the end of the script was reached
|
||||||
|
test -f "$DONE_CANARY"
|
||||||
|
|
||||||
|
# This closes the last group opened in `build_steps.sh`
|
||||||
|
( endgroup "Final checks" ) 2> /dev/null
|
||||||
Generated
+27
@@ -0,0 +1,27 @@
|
|||||||
|
BSD-3-Clause license
|
||||||
|
Copyright (c) 2015-2022, conda-forge contributors
|
||||||
|
All rights reserved.
|
||||||
|
|
||||||
|
Redistribution and use in source and binary forms, with or without
|
||||||
|
modification, are permitted provided that the following conditions are met:
|
||||||
|
|
||||||
|
1. Redistributions of source code must retain the above copyright notice,
|
||||||
|
this list of conditions and the following disclaimer.
|
||||||
|
2. Redistributions in binary form must reproduce the above copyright
|
||||||
|
notice, this list of conditions and the following disclaimer in the
|
||||||
|
documentation and/or other materials provided with the distribution.
|
||||||
|
3. Neither the name of the copyright holder nor the names of its
|
||||||
|
contributors may be used to endorse or promote products derived from
|
||||||
|
this software without specific prior written permission.
|
||||||
|
|
||||||
|
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||||
|
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||||
|
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR
|
||||||
|
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||||
|
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||||
|
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
|
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||||
|
OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
|
||||||
|
DAMAGE.
|
||||||
@@ -0,0 +1,147 @@
|
|||||||
|
About gdptools
|
||||||
|
==============
|
||||||
|
|
||||||
|
Home: https://code.usgs.gov/wma/nhgf/toolsteam/gdptools
|
||||||
|
|
||||||
|
Package license: Unlicense
|
||||||
|
|
||||||
|
Feedstock license: [BSD-3-Clause](https://github.com/conda-forge/gdptools-feedstock/blob/main/LICENSE.txt)
|
||||||
|
|
||||||
|
Summary: Gdptools
|
||||||
|
|
||||||
|
Current build status
|
||||||
|
====================
|
||||||
|
|
||||||
|
|
||||||
|
<table><tr><td>All platforms:</td>
|
||||||
|
<td>
|
||||||
|
<a href="https://dev.azure.com/conda-forge/feedstock-builds/_build/latest?definitionId=17168&branchName=main">
|
||||||
|
<img src="https://dev.azure.com/conda-forge/feedstock-builds/_apis/build/status/gdptools-feedstock?branchName=main">
|
||||||
|
</a>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
</table>
|
||||||
|
|
||||||
|
Current release info
|
||||||
|
====================
|
||||||
|
|
||||||
|
| Name | Downloads | Version | Platforms |
|
||||||
|
| --- | --- | --- | --- |
|
||||||
|
| [](https://anaconda.org/conda-forge/gdptools) | [](https://anaconda.org/conda-forge/gdptools) | [](https://anaconda.org/conda-forge/gdptools) | [](https://anaconda.org/conda-forge/gdptools) |
|
||||||
|
|
||||||
|
Installing gdptools
|
||||||
|
===================
|
||||||
|
|
||||||
|
Installing `gdptools` from the `conda-forge` channel can be achieved by adding `conda-forge` to your channels with:
|
||||||
|
|
||||||
|
```
|
||||||
|
conda config --add channels conda-forge
|
||||||
|
conda config --set channel_priority strict
|
||||||
|
```
|
||||||
|
|
||||||
|
Once the `conda-forge` channel has been enabled, `gdptools` can be installed with `conda`:
|
||||||
|
|
||||||
|
```
|
||||||
|
conda install gdptools
|
||||||
|
```
|
||||||
|
|
||||||
|
or with `mamba`:
|
||||||
|
|
||||||
|
```
|
||||||
|
mamba install gdptools
|
||||||
|
```
|
||||||
|
|
||||||
|
It is possible to list all of the versions of `gdptools` available on your platform with `conda`:
|
||||||
|
|
||||||
|
```
|
||||||
|
conda search gdptools --channel conda-forge
|
||||||
|
```
|
||||||
|
|
||||||
|
or with `mamba`:
|
||||||
|
|
||||||
|
```
|
||||||
|
mamba search gdptools --channel conda-forge
|
||||||
|
```
|
||||||
|
|
||||||
|
Alternatively, `mamba repoquery` may provide more information:
|
||||||
|
|
||||||
|
```
|
||||||
|
# Search all versions available on your platform:
|
||||||
|
mamba repoquery search gdptools --channel conda-forge
|
||||||
|
|
||||||
|
# List packages depending on `gdptools`:
|
||||||
|
mamba repoquery whoneeds gdptools --channel conda-forge
|
||||||
|
|
||||||
|
# List dependencies of `gdptools`:
|
||||||
|
mamba repoquery depends gdptools --channel conda-forge
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
About conda-forge
|
||||||
|
=================
|
||||||
|
|
||||||
|
[](https://numfocus.org)
|
||||||
|
|
||||||
|
conda-forge is a community-led conda channel of installable packages.
|
||||||
|
In order to provide high-quality builds, the process has been automated into the
|
||||||
|
conda-forge GitHub organization. The conda-forge organization contains one repository
|
||||||
|
for each of the installable packages. Such a repository is known as a *feedstock*.
|
||||||
|
|
||||||
|
A feedstock is made up of a conda recipe (the instructions on what and how to build
|
||||||
|
the package) and the necessary configurations for automatic building using freely
|
||||||
|
available continuous integration services. Thanks to the awesome service provided by
|
||||||
|
[Azure](https://azure.microsoft.com/en-us/services/devops/), [GitHub](https://github.com/),
|
||||||
|
[CircleCI](https://circleci.com/), [AppVeyor](https://www.appveyor.com/),
|
||||||
|
[Drone](https://cloud.drone.io/welcome), and [TravisCI](https://travis-ci.com/)
|
||||||
|
it is possible to build and upload installable packages to the
|
||||||
|
[conda-forge](https://anaconda.org/conda-forge) [Anaconda-Cloud](https://anaconda.org/)
|
||||||
|
channel for Linux, Windows and OSX respectively.
|
||||||
|
|
||||||
|
To manage the continuous integration and simplify feedstock maintenance
|
||||||
|
[conda-smithy](https://github.com/conda-forge/conda-smithy) has been developed.
|
||||||
|
Using the ``conda-forge.yml`` within this repository, it is possible to re-render all of
|
||||||
|
this feedstock's supporting files (e.g. the CI configuration files) with ``conda smithy rerender``.
|
||||||
|
|
||||||
|
For more information please check the [conda-forge documentation](https://conda-forge.org/docs/).
|
||||||
|
|
||||||
|
Terminology
|
||||||
|
===========
|
||||||
|
|
||||||
|
**feedstock** - the conda recipe (raw material), supporting scripts and CI configuration.
|
||||||
|
|
||||||
|
**conda-smithy** - the tool which helps orchestrate the feedstock.
|
||||||
|
Its primary use is in the construction of the CI ``.yml`` files
|
||||||
|
and simplify the management of *many* feedstocks.
|
||||||
|
|
||||||
|
**conda-forge** - the place where the feedstock and smithy live and work to
|
||||||
|
produce the finished article (built conda distributions)
|
||||||
|
|
||||||
|
|
||||||
|
Updating gdptools-feedstock
|
||||||
|
===========================
|
||||||
|
|
||||||
|
If you would like to improve the gdptools recipe or build a new
|
||||||
|
package version, please fork this repository and submit a PR. Upon submission,
|
||||||
|
your changes will be run on the appropriate platforms to give the reviewer an
|
||||||
|
opportunity to confirm that the changes result in a successful build. Once
|
||||||
|
merged, the recipe will be re-built and uploaded automatically to the
|
||||||
|
`conda-forge` channel, whereupon the built conda packages will be available for
|
||||||
|
everybody to install and use from the `conda-forge` channel.
|
||||||
|
Note that all branches in the conda-forge/gdptools-feedstock are
|
||||||
|
immediately built and any created packages are uploaded, so PRs should be based
|
||||||
|
on branches in forks and branches in the main repository should only be used to
|
||||||
|
build distinct package versions.
|
||||||
|
|
||||||
|
In order to produce a uniquely identifiable distribution:
|
||||||
|
* If the version of a package **is not** being increased, please add or increase
|
||||||
|
the [``build/number``](https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#build-number-and-string).
|
||||||
|
* If the version of a package **is** being increased, please remember to return
|
||||||
|
the [``build/number``](https://docs.conda.io/projects/conda-build/en/latest/resources/define-metadata.html#build-number-and-string)
|
||||||
|
back to 0.
|
||||||
|
|
||||||
|
Feedstock Maintainers
|
||||||
|
=====================
|
||||||
|
|
||||||
|
* [@ocefpaf](https://github.com/ocefpaf/)
|
||||||
|
|
||||||
Generated
+6
@@ -0,0 +1,6 @@
|
|||||||
|
# This file was generated automatically from conda-smithy. To update this configuration,
|
||||||
|
# update the conda-forge.yml and/or the recipe/meta.yaml.
|
||||||
|
# -*- mode: yaml -*-
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
- template: ./.azure-pipelines/azure-pipelines-linux.yml
|
||||||
+105
@@ -0,0 +1,105 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
#
|
||||||
|
# This file has been generated by conda-smithy in order to build the recipe
|
||||||
|
# locally.
|
||||||
|
#
|
||||||
|
import os
|
||||||
|
import glob
|
||||||
|
import subprocess
|
||||||
|
from argparse import ArgumentParser
|
||||||
|
import platform
|
||||||
|
|
||||||
|
|
||||||
|
def setup_environment(ns):
|
||||||
|
os.environ["CONFIG"] = ns.config
|
||||||
|
os.environ["UPLOAD_PACKAGES"] = "False"
|
||||||
|
os.environ["IS_PR_BUILD"] = "True"
|
||||||
|
if ns.debug:
|
||||||
|
os.environ["BUILD_WITH_CONDA_DEBUG"] = "1"
|
||||||
|
if ns.output_id:
|
||||||
|
os.environ["BUILD_OUTPUT_ID"] = ns.output_id
|
||||||
|
if "MINIFORGE_HOME" not in os.environ:
|
||||||
|
os.environ["MINIFORGE_HOME"] = os.path.join(
|
||||||
|
os.path.dirname(__file__), "miniforge3"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def run_docker_build(ns):
|
||||||
|
script = ".scripts/run_docker_build.sh"
|
||||||
|
subprocess.check_call([script])
|
||||||
|
|
||||||
|
|
||||||
|
def run_osx_build(ns):
|
||||||
|
script = ".scripts/run_osx_build.sh"
|
||||||
|
subprocess.check_call([script])
|
||||||
|
|
||||||
|
|
||||||
|
def verify_config(ns):
|
||||||
|
valid_configs = {
|
||||||
|
os.path.basename(f)[:-5] for f in glob.glob(".ci_support/*.yaml")
|
||||||
|
}
|
||||||
|
print(f"valid configs are {valid_configs}")
|
||||||
|
if ns.config in valid_configs:
|
||||||
|
print("Using " + ns.config + " configuration")
|
||||||
|
return
|
||||||
|
elif len(valid_configs) == 1:
|
||||||
|
ns.config = valid_configs.pop()
|
||||||
|
print("Found " + ns.config + " configuration")
|
||||||
|
elif ns.config is None:
|
||||||
|
print("config not selected, please choose from the following:\n")
|
||||||
|
selections = list(enumerate(sorted(valid_configs), 1))
|
||||||
|
for i, c in selections:
|
||||||
|
print(f"{i}. {c}")
|
||||||
|
s = input("\n> ")
|
||||||
|
idx = int(s) - 1
|
||||||
|
ns.config = selections[idx][1]
|
||||||
|
print(f"selected {ns.config}")
|
||||||
|
else:
|
||||||
|
raise ValueError("config " + ns.config + " is not valid")
|
||||||
|
# Remove the following, as implemented
|
||||||
|
if ns.config.startswith("win"):
|
||||||
|
raise ValueError(
|
||||||
|
f"only Linux/macOS configs currently supported, got {ns.config}"
|
||||||
|
)
|
||||||
|
elif ns.config.startswith("osx"):
|
||||||
|
if "OSX_SDK_DIR" not in os.environ:
|
||||||
|
raise RuntimeError(
|
||||||
|
"Need OSX_SDK_DIR env variable set. Run 'export OSX_SDK_DIR=SDKs' "
|
||||||
|
"to download the SDK automatically to 'SDKs/MacOSX<ver>.sdk'. "
|
||||||
|
"Setting this variable implies agreement to the licensing terms of the SDK by Apple."
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def main(args=None):
|
||||||
|
p = ArgumentParser("build-locally")
|
||||||
|
p.add_argument("config", default=None, nargs="?")
|
||||||
|
p.add_argument(
|
||||||
|
"--debug",
|
||||||
|
action="store_true",
|
||||||
|
help="Setup debug environment using `conda debug`",
|
||||||
|
)
|
||||||
|
p.add_argument(
|
||||||
|
"--output-id", help="If running debug, specify the output to setup."
|
||||||
|
)
|
||||||
|
|
||||||
|
ns = p.parse_args(args=args)
|
||||||
|
verify_config(ns)
|
||||||
|
setup_environment(ns)
|
||||||
|
|
||||||
|
try:
|
||||||
|
if ns.config.startswith("linux") or (
|
||||||
|
ns.config.startswith("osx") and platform.system() == "Linux"
|
||||||
|
):
|
||||||
|
run_docker_build(ns)
|
||||||
|
elif ns.config.startswith("osx"):
|
||||||
|
run_osx_build(ns)
|
||||||
|
finally:
|
||||||
|
recipe_license_file = os.path.join(
|
||||||
|
"recipe", "recipe-scripts-license.txt"
|
||||||
|
)
|
||||||
|
if os.path.exists(recipe_license_file):
|
||||||
|
os.remove(recipe_license_file)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
main()
|
||||||
+4
-1
@@ -1 +1,4 @@
|
|||||||
{}
|
github:
|
||||||
|
branch_name: main
|
||||||
|
tooling_branch_name: main
|
||||||
|
conda_forge_output_validation: true
|
||||||
|
|||||||
Reference in New Issue
Block a user