Thank you for considering contributing to OSC-CLI.
Potential contributions include:
- Reporting and fixing bugs.
- Requesting features.
- Adding features.
- Cleaning up the code.
- Improving the documentation.
In order to report bugs or request features, search the issue tracker to check for a duplicate.
It’s totally acceptable to create an issue when you’re unsure whether something is a bug or not. We’ll help you figure it out.
Use the same issue tracker to report problems with the documentation.
Pre-requisites:
- An Outscale account
- At least 50 AccessKeys in your quota
- pre-commit installed
Setup:
- Fill a valid
default
profile in~/.osc/config.json
export OSC_TEST_LOGIN="[email protected]"
export OSC_TEST_PASSWORD="MySecretPassword"
Finally, you can run make test
We’ll do our best to review your pull request (or “PR” for short) quickly.
Each PR should, as much as possible, address just one issue and be self-contained. Smaller the set of changes in the pull request is, the quicker it can be reviewed and merged - if you have ten small, unrelated changes, then go ahead and submit ten PRs.
- Be sure to fetch upstream master
git fetch origin
- Create new release branch
git checkout -b v1.x.x origin/master
following semantic versioning 2.0.0 - Edit
osc_sdk/sdk.py
and updateSDK_VERSION
- Update
setup.py
to updateversion
- Run all tests with
make test
- Build with
make build
. Make sure you havedist/osc_sdk-1.x-py2.py3-none-any.whl
anddist/osc-sdk-1.x.tar.gz
. - Package with
make package
. Make sure you havepkg/osc-cli-x86_64.AppImage
(you will need either docker or packman). - Commit release update:
git commit -asm "osc-cli v1.x.x"
- Push release to new branch
git push origin v1.x.x
- Create PR to run github actions and get validation
- Make the PR reviewed
- Tag new release
git tag v1.x.x
and push taggit push --tags osc
- Create release page
- Add major change to release page
- Upload artifacts in release page:
dist/osc_sdk-1.x-py2.py3-none-any.whl
dist/osc-sdk-1.x.tar.gz
pkg/osc-cli-x86_64.AppImage
- Check that auto-build workflow has published package to pip. If not, manually upload files.
- Check that homebrew has auto-updated with
brew install osc-cli
or check commit history, note brew's bot can take time. If not:- Fork and clone homebrew-core
- Edit
Formula/osc-cli.rb
and updateurl
field based on latest osc-sdk-1.x.x.tar.gz's url - Update dependencies with
brew update-python-resources ./Formula/osc-cli.rb
- Create PR and follow asked instructions in template