Autodesk provides a simple Python-based API for accessing Flow Production Tracking and integrating with other tools. This is the official API that is maintained by Autodesk (https://knowledge.autodesk.com/contact-support)
The latest version can always be found at http://github.com/shotgunsoftware/python-api
Tutorials and detailed documentation about the Python API are available at http://developer.shotgridsoftware.com/python-api).
Some useful direct links:
You can see the full history of the Python API on the documentation site.
The API comes with a copy of the httplib2
inside the shotgun_api3/lib
folder. To update the copy to a more recent version of the API, you can run the update_httplib2.py
script at the root of this repository like this:
python update_httplib2.py vX.Y.Z
where vX.Y.Z
is a release found on httplib2
's release page.
Integration and unit tests are provided.
pip install -r tests/ci_requirements.txt
will install this package)tests/config
file (you can copy an example from tests/example_config
).nosetests --config="nose.cfg" tests/test_client.py
--config="nose.cfg"
option. This option tells nose to use our config file. This will exclude python 2- and 3-specific files in the /lib
directory, preventing a failure from being reported by nose for compilation due to incompatible syntax in those files.test_client
and tests_unit
use mock server interaction and do not require a Flow Production Tracking instance to be available (no modifications to tests/config
are necessary).test_api
and test_api_long
do require a Flow Production Tracking instance, with a script key available for the tests. The server and script user values must be supplied in the tests/config
file. The tests will add test data to your server based on information in your config. This data will be manipulated by the tests, and should not be used for other purposes.run-tests
.1) Update the Changelog in the HISTORY.rst
file
python-api/setup.py
to match the version you are packaging. This controls what version users will get when installing via pip.
4) Update the __version__
value in shotgun_api3/shotgun.py
to the version you're releasing. This identified the current version within the API itself.
5) Commit these changes in master with a commit message like packaging for the vx.x.x release
.
6) Create a tag based off of the master branch called vx.x.x
to match the version number you're releasing.
7) Push master and your tag to Github.
8) Update the Releases page with your new release.Post a message in the Pipeline Community channel.
1) Update the __version__
value in shotgun_api3/shotgun.py
to the next version number with .dev
appended to it. For example, v3.0.24.dev
2) Add a new section to the Changelog in the HISTORY.rst
file with the next version number and a TBD date
**v3.0.24 - TBD**
+ TBD
3) Commit the changes to master with a commit message like Bump version to v3.0.24.dev
4) Push master to Github