ciscoisesdk is a community development project. Feedback, thoughts, ideas, and code contributions are most welcome!
Please use the issues page to report issues or post ideas for enhancement.
We have created some scripts to automate everyday actions needed when working on the project. Please see the script directory, and it's README for more information.
The test suite is grouped by Identity Services Engine versions supported in the Cisco Identity Services Engine SDK.
The test suite uses a mockup server, instead of calling to a Identity Services Engine server directly.
The mockup server is not perfect, that is why it is sometimes necessary to rerun a failed test, we do this by using pytest-rerunfailures. On the script/test file, you can find the pytest-rerunfailures settings, adjust them locally if strictly necessary.
Check for open issues or create a new issue for the item you want to work on and make sure to comment and let us know that you are working on it.
Fork a copy of the repository and clone your forked repository to your development environment.
Run
script/setup
to install the development dependencies and setup your environment.Configure the following environment variables in your development environment:
TEST_IDENTITY_SERVICES_ENGINE_ENCODED_AUTH
- Your test account's Identity Services Engine encoded_auth (username:password encoded in base 64). This variable has priority over username and password.TEST_IDENTITY_SERVICES_ENGINE_USERNAME
- Your test account's Identity Services Engine username.TEST_IDENTITY_SERVICES_ENGINE_PASSWORD
- Your test account's Identity Services Engine password.DEBUG_ENVIRONMENT_VARIABLE
- Your test's debug variable, which controls whether to log information about Identity Services Engine APIs' request and response process.VERSION_ENVIRONMENT_VARIABLE
- The Identity Services Engine API's version used to test the SDK.
Add your code to your forked repository.
If you are creating some new feature or functionality (excellent!), please also write a test to verify that your code works as expected.
We follow PEP8 reasonably strictly for this project. Please make sure your code passes the linter.
Run
script/test lint
or simply runflake8
from the project root.Commit your changes.
Submit a pull request. The GitHub/Travis CI system runs the test suite against your pull request code. If any tests fail, please review your changes. If everything looks good, we will gladly merge your request!
Check for open issues or create a new 'issue' for the item you want to work on and make sure to comment and let us know that you are working on it.
Fork a copy of the repository and clone your forked repository to your development environment.
Run
script/setup
to install the development dependencies and setup your environment.Configure the following environment variables in your development environment:
TEST_IDENTITY_SERVICES_ENGINE_ENCODED_AUTH
- Your test account's Identity Services Engine encoded_auth (username:password encoded in base 64). This variable has priority over username and password.TEST_IDENTITY_SERVICES_ENGINE_USERNAME
- Your test account's Identity Services Engine username.TEST_IDENTITY_SERVICES_ENGINE_PASSWORD
- Your test account's Identity Services Engine password.DEBUG_ENVIRONMENT_VARIABLE
- Your test's debug variable, which controls whether to log information about Identity Services Engine APIs' request and response process.VERSION_ENVIRONMENT_VARIABLE
- The Identity Services Engine API's version used to test the SDK.
Example:
#!/usr/bin/env bash export TEST_IDENTITY_SERVICES_ENGINE_ENCODED_AUTH="<test account's username:password encoded in base 64>"
Add your code to your forked repository.
If you are creating some new feature or functionality (excellent!), please also write a test to verify that your code works as expected.
We follow PEP8 reasonably strictly for this project. Please make sure your code passes the linter.
Run
script/test lint
from the project root.Commit your changes.
Ensure your code passes all of the default tests for all the involved Identity Services Engine versions.
Run
script/test
and ensure all tests execute successfully.Submit a pull request. If everything looks good, we will gladly merge your request!