Task #4784
closedCreate a tool for generating Travis config for plugins
100%
Description
The plugin_template bootstrap script generates some Travis configs for the plugin. However, over time we have found that these configs change and require the plugin writer to manually update. As a result of this task, the plugin writer will have a script that is called generate_plugin_travis_config. It will take the following arguments:
plugin app_label (string) - the label used to find plugin repo directory and in template substitution
test_docs (boolean) - if true, Travis will test running 'make html' in the docs directory
deploy_to_pypi (boolean) - if yes, Travis will deploy to PyPI when a tag is pushed
deploy_client_to_pypi (boolean) - if yes, Travis will deploy the Python client library to PyPI when a tag is pushed
deploy_client_to_rubygems (boolean). - if yes, Travis will deploy the Ruby client library to rubygems.org
The plugin writer will still need to provide the credentials for PyPI and Rubygems.org, but the rest will be handled by this script.
Related issues
Updated by amacdona@redhat.com over 5 years ago
+1, this will be helpful. Since has a lot more arguments, it probably makes sense to uses jinja or something instead of python string substitution.
Updated by bmbouter over 5 years ago
+1 we should do this. The bindings are hugely valuable, but the cost of adding each of these features to each repo is too high. This tool will bring that back into something we can afford to do for all bindings for all plugins!
Updated by dkliban@redhat.com over 5 years ago
- Status changed from NEW to ASSIGNED
- Assignee set to dkliban@redhat.com
Updated by dkliban@redhat.com over 5 years ago
What about adding even more options:
test_mariadb
test_python_client
??
Updated by bmbouter over 5 years ago
dkliban@redhat.com wrote:
What about adding even more options:
test_mariadb
test_python_client??
The test_mariadb definitly makes sense, and I think should be True by default. Also the test_docs (already in the ticket) should default to true also. Basically all the testing should default to true.
test_python_client I could take or leave at the moment. I do think we'll have it one way or another over time. So I would say +0 to that.
Also to confirm, this will use the Ansible installer to handle all the installation right? If so, we can find all those "switch plugin X to Travis" and use those when we apply the tooling.
Updated by dkliban@redhat.com over 5 years ago
Also to confirm, this will use the Ansible installer to handle all the installation right? If so, we can find all those "switch plugin X to Travis" and use those when we apply the tooling.
Yes, it will use ansible-pulp to deploy the pulpcore with the plugin.
Updated by dkliban@redhat.com over 5 years ago
- Blocks Task #4572: Switch Travis installer to use Ansbile roles added
Updated by dkliban@redhat.com over 5 years ago
- Blocks Task #4571: Switch Travis installer to use Ansbile roles added
Updated by dkliban@redhat.com over 5 years ago
- Blocks Task #4574: Switch Travis installer to use Ansbile roles added
Updated by dkliban@redhat.com over 5 years ago
- Status changed from ASSIGNED to POST
Added by dkliban@redhat.com over 5 years ago
Updated by dkliban@redhat.com over 5 years ago
- Status changed from POST to MODIFIED
- % Done changed from 0 to 100
Applied in changeset plugin_template|a457e645ddad87d6330661fdaa9f5a089f6f2606.
Updated by bmbouter about 5 years ago
- Status changed from MODIFIED to CLOSED - CURRENTRELEASE
Problem: no way to update Travis config for plugin
Solution: add a script for generating travis configs
This patch introduces a new script that plugin writers can use to generate Travis configs for their projects.
fixes: #4784 https://pulp.plan.io/issues/4784