========================
.. image:: https://coveralls.io/repos/rhazdon/django-sonic-screwdriver/badge.svg?branch=master&service=github
:target: https://coveralls.io/github/rhazdon/django-sonic-screwdriver?branch=master
.. image:: https://codeclimate.com/github/rhazdon/django-sonic-screwdriver/badges/gpa.svg
:target: https://codeclimate.com/github/rhazdon/django-sonic-screwdriver
:alt: Code Climate
.. image:: https://badge.fury.io/py/django-sonic-screwdriver.svg
:target: http://badge.fury.io/py/django-sonic-screwdriver
Django Sonic Screwdriver is a collection of very useful commands and will make your life easier.
The versioning tool fully supports `PEP 0440<https://www.python.org/dev/peps/pep-0440/>`_.
Installation
------------
You can download the latest version from the Python Package Index PyPI.
.. code:: bash
$ pip install django-sonic-screwdriver
Add the package to your settings.py:
.. code:: python
INSTALLED_APPS = (
...
'django_sonic_screwdriver',
...
)
Settings
--------
.. code:: python
SONIC_SCREWDRIVER = {
# For test purpose
'DEBUG': False,
# Returns file where the version number is located
'VERSION_FILE': 'setup.py',
'RELEASE_SEPARATOR': '', # '_', '-', '.'
'PATCH_AUTO_TAG': False,
'PATCH_AUTO_TAG_PUSH': False,
'PATCH_AUTO_COMMIT': False,
'GIT_DIR': setting.BASE_DIR,
# Git Tagging
'GIT_TAG_AUTO_COMMIT': False,
'GIT_TAG_AUTO_TAG_PUSH': False,
'GIT_STAGING_PRE_TAG': 'staging',
'GIT_ACTIVATE_PRE_TAG': 'activate',
'SECURE_TAGGING': True,
}
**Description:**
======= ======= ===========
Setting Default Description
======= ======= ===========
DEBUG False Enables or disables the debug mode. For testing purposes.
VERSION_FILE 'setup.py' Specifies, where you safe your project Version. It should be just on place - any other should refer to this one.
RELEASE_SEPARATOR '' The RELEASE_SEPARATOR is the seperator between the version number and the relase. E.g. v0.1.2b0, v0.1.2_b0, v0.1.2-b0, v0.1.2.b0. All of this variants is support by `PEP 0440<https://www.python.org/dev/peps/pep-0440/>`_.
PATCH_AUTO_TAG False If True, Sonic Screwdriver tries to create automatically a tag from every patch you create with ./manage.py patch.
PATCH_AUTO_TAG_PUSH False If True, after creating a tag via './manage.py patch', Sonic Screwdriver will try to push this tag automatically.
PATCH_AUTO_COMMIT False NOT IMPLEMENTED YET!
GIT_DIR settings.BASE_DIR Specify your project root dir.
GIT_TAG_AUTO_COMMIT False NOT IMPLEMENTED!
GIT_TAG_AUTO_TAG_PUSH False If True, Sonic Screwdriver pushes automatically the current created tags.
GIT_STAGING_PRE_TAG 'staging' Pre tag for git.
GIT_ACTIVATE_PRE_TAG 'activate' Pre tag for git.
SECURE_TAGGING True Security for production tags. If True, Sonic Screwdriver checks the remote repository for a staging tag of the current requested production version. Developer will be able to create a production tag only then, if the same version exists as staging tag.
======= ======= ===========
Commands
--------
cache:clear
~~~~~~~~~~~
Clear the cache.
gen:secretkey
~~~~~~~~~~~~~
Generate a new Secretkey for Django.
patch
~~~~~
Command "patch" will help you to increase the version number of your project in a easy way.
====== ===========
Option Description
====== ===========
-M, --major Set major number
-m, --minor Set minor number
-p, --patch Set patch number
-d, --dev Set dev release (e.g. 1.2.1dev1)
-a, --alpha Set alpha release (e.g. 1.2.1a1)
-b, --beta Set beta release (e.g. 1.2.1b1)
-r, --release-candidate Set release candidate release (e.g. 1.2.1rc1)
-f, --force Force patching
====== ===========
git:add
~~~~~~~
Add files to Git repository. Supports all standard "git add" options.
====== ===========
Option Description
====== ===========
-n, --dry-run Dry run
--verbose Be verbose.
-i, --interactive Interactive picking.
-p, --patch Select hunks interactively.
-e, --edit Edit current diff and apply.
-f, --force Allow adding otherwise ignored files.
-u, --update Update tracked files.
-N, --intent-to-add Record only the fact that the path will be added later.
-A, --all Add changes from all tracked and untracked files.
--ignore-removal Ignore paths removed in the working tree (same as --no-all).
--refresh Do not add, only refresh the index.
--ignore-errors Just skip files which cannot be added because of errors.
--ignore-missing Check if - even missing - files are ignored in dry run.
====== ===========
git:tag
~~~~~~~
Tag your project.
====== ===========
Option Description
====== ===========
--default (is default)
--staging Create a staging tag (e.g. staging-v1.2.3)
--activate Create a activate tag (e.g. activate-v1.2.3)
--push Push tags
====== ===========
git:tag:push
~~~~~~~~~~~~
Push your tagged project.
git:tag:delete
~~~~~~~~~~~~~~
Remove the latest or given tag from local repository.
====== ===========
Option Description
====== ===========
<tag> Remove the latest or given tag (optional).
====== ===========
pypi:export
~~~~~~~~~~~
Export your project.
====== ===========
Option Description
====== ===========
--no-wheel Export project without wheel (not recommended)
-u, --upload Upload Project
====== ===========
pypi:upload
~~~~~~~~~~~
Upload project to pypi via twine.'
====== ===========
Option Description
====== ===========
--default Upload project to PyPI via twine
====== ===========
To Do:
------
[x] git:add
[x] Secure production tagging
[ ] git:commit
[ ] Heroku Support
[ ] Deis Support
[ ] Docker and Vagrant blueprints
[ ] ...
Metadata
Release files for django-sonic-screwdriver 0.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| django-sonic-screwdriver-0.2.2.tar.gz | 12.2 kB | Without provenance | Details for django-sonic-screwdriver-0.2.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| django_sonic_screwdriver-0.2.2-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details for django_sonic_screwdriver-0.2.2-py2.py3-none-any.whl |
Total release size: 35.9 kB
Release files / django-sonic-screwdriver-0.2.2.tar.gz
| Download URL | django-sonic-screwdriver-0.2.2.tar.gz |
|---|---|
| Size | 12.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7ea530f8fc97e31a188241d69b0868ff3875319993186237cdd2a2ba0905b6da
|
|
BLAKE2b-256 checksum How to use checksums |
4db1b47e3713407b2b68da32476014ed6b571b93d9da0e7cbd1916039993f850
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Release files / django_sonic_screwdriver-0.2.2-py2.py3-none-any.whl
| Download URL | django_sonic_screwdriver-0.2.2-py2.py3-none-any.whl |
|---|---|
| Size | 23.6 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
ee90e2546e740335cb7664648358b5f4b4560b838c098c4fcd6eb9b9fcdd3d1e
|
|
BLAKE2b-256 checksum How to use checksums |
e77977972cb4f34ab8150dfaa924af187397b38ada1da9e8082ac2fa65a302e6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for django-sonic-screwdriver 0.2.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.