使用TravisCI在Anaconda上部署Python包
我正在尝试使用TravisCI在Anaconda上部署Python包。我已经设置了PyPi部署,运行良好。这是使用TravisCI在Anaconda上部署Python包,python,anaconda,conda,travis-ci,continuous-deployment,Python,Anaconda,Conda,Travis Ci,Continuous Deployment,我正在尝试使用TravisCI在Anaconda上部署Python包。我已经设置了PyPi部署,运行良好。这是travis.yml文件的相关部分: 部署: 提供者:pypi 用户名:“\uuuu令牌\uuuuuu” 密码: 安全:。。。。。。 关于: 标签:真的 分发:“sdist bdist_车轮” 跳过现有值:true 部署后: -conda安装conda构建 -conda安装anaconda客户端 -bash.ci/conda_upload.sh 错误发生在.ci/conda_uploa
travis.yml
文件的相关部分:
部署:
提供者:pypi
用户名:“\uuuu令牌\uuuuuu”
密码:
安全:。。。。。。
关于:
标签:真的
分发:“sdist bdist_车轮”
跳过现有值:true
部署后:
-conda安装conda构建
-conda安装anaconda客户端
-bash.ci/conda_upload.sh
错误发生在.ci/conda_upload.sh
中。这里是conda_upload.sh:
USER=myusername
mkdir~/conda bld
conda config--设置anaconda_上载编号
导出CONDA\u BLD\u路径=~/CONDA BLD
ls-l
康达建筑。
读取文件时查找$CONDA_BLD_PATH/-name*.tar.bz2
做
echo$文件
anaconda-t$CONDA_UPLOAD_TOKEN UPLOAD-u$USER$文件——强制
完成
我收到的错误消息发生在conda build.
,它找不到setup.py
文件。但是,前面的ls-l
调用清楚地表明那里有一个setup.py
文件:
...
-rw-rw-r-- 1 travis travis 1190 Aug 15 09:42 setup.py
...
我还包括
构建:
脚本_env:
-康达路
在meta.yaml
文件中
以下是我在Travis上获得的全部输出:
WARNING:conda_build.metadata:No numpy version specified in conda_build_config.yaml. Falling back to default numpy value of 1.11
Adding in variants from internal_defaults
INFO:conda_build.variants:Adding in variants from internal_defaults
Attempting to finalize metadata for pysprint
INFO:conda_build.metadata:Attempting to finalize metadata for pysprint
Collecting package metadata (repodata.json): ...working... done
Solving environment: ...working... done
Collecting package metadata (repodata.json): ...working... done
Solving environment: ...working... done
BUILD START: ['pysprint-0.12.1-py38_0.tar.bz2']
Collecting package metadata (repodata.json): ...working... done
Solving environment: ...working... done
## Package Plan ##
environment location: /home/travis/conda-bld/pysprint_1597484753718/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pl
The following NEW packages will be INSTALLED:
# deleted this section to save space
Preparing transaction: ...working... done
Verifying transaction: ...working... done
Executing transaction: ...working... done
Collecting package metadata (repodata.json): ...working... done
Solving environment: ...working... done
/home/travis/conda-bld/pysprint_1597484753718/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pl/bin/python: can't open file 'setup.py': [Errno 2] No such file or directory
source tree in: /home/travis/conda-bld/pysprint_1597484753718/work
export PREFIX=/home/travis/conda-bld/pysprint_1597484753718/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pl
export BUILD_PREFIX=/home/travis/conda-bld/pysprint_1597484753718/_build_env
export SRC_DIR=/home/travis/conda-bld/pysprint_1597484753718/work
Traceback (most recent call last):
File "/home/travis/miniconda/bin/conda-build", line 11, in <module>
sys.exit(main())
File "/home/travis/miniconda/lib/python3.8/site-packages/conda_build/cli/main_build.py", line 474, in main
execute(sys.argv[1:])
File "/home/travis/miniconda/lib/python3.8/site-packages/conda_build/cli/main_build.py", line 463, in execute
outputs = api.build(args.recipe, post=args.post, test_run_post=args.test_run_post,
File "/home/travis/miniconda/lib/python3.8/site-packages/conda_build/api.py", line 208, in build
return build_tree(absolute_recipes, config, stats, build_only=build_only, post=post,
File "/home/travis/miniconda/lib/python3.8/site-packages/conda_build/build.py", line 2859, in build_tree
packages_from_this = build(metadata, stats,
File "/home/travis/miniconda/lib/python3.8/site-packages/conda_build/build.py", line 1994, in build
utils.check_call_env(cmd, env=env, rewrite_stdout_env=rewrite_env,
File "/home/travis/miniconda/lib/python3.8/site-packages/conda_build/utils.py", line 405, in check_call_env
return _func_defaulting_env_to_os_environ('call', *popenargs, **kwargs)
File "/home/travis/miniconda/lib/python3.8/site-packages/conda_build/utils.py", line 385, in _func_defaulting_env_to_os_environ
raise subprocess.CalledProcessError(proc.returncode, _args)
subprocess.CalledProcessError: Command '['/bin/bash', '-o', 'errexit', '/home/travis/conda-bld/pysprint_1597484753718/work/conda_build.sh']' returned non-zero exit status 2.
但我不知道怎么解决这个问题。我对linux环境和shell脚本非常陌生,如果有人能帮助我,我将不胜感激
编辑:
meta.yaml的内容
:
{%set name=“pysprint”%}
{%set version=“0.12.1”%}
包裹:
名称:{{name | lower}}”
版本:“{version}}”
资料来源:
url:“https://pypi.io/packages/source/{{name[0]}/{{name}/{{name}-{{version}}.tar.gz“
sha256:5fee159c59c81fd31957e23bbd292bcfc1c947583f27eda7f4215594ec898ddd
建造:
脚本_env:
-康达路
要求:
主持人:
-matplotlib
-numpy>=1.16.6
-熊猫
-皮普
-蟒蛇
-松软的
测试:
进口:
-皮斯普林特
结果是deploy
部分不知怎么搞砸了conda的部署。我将部署后的部分更改为部署前的,它可以正常工作
在部署之前:
-conda安装conda构建
-conda安装anaconda客户端
-bash.ci/conda_upload.sh
部署:
提供者:pypi
用户名:“\uuuu令牌\uuuuuu”
密码:
安全:。。。。。。
关于:
标签:真的
分发:“sdist bdist_车轮”
跳过现有值:true
但是,我一点也不清楚是什么导致了这个问题。您的meta.yaml
和build.sh
的完整内容是什么?如果您有一个build.sh
:$PYTHON setup.py install
。在meta.yaml
中:包版本、名称、要求、脚本环境变量和测试导入。如果你需要完整的文件,我可以更新问题。本地conda生成使用指定的meta.yaml
和setup.py
成功。
environment location: /home/travis/conda-bld/pysprint_1597484753718/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pl