CHANGES
=======

v0.37.2
-------

* Fix: Replace v1 dockerhub api with v2 json files
* Fix: Improve parameter handling in os/image cleanup

v0.37.0
-------

* Fix: Correct file path and url parsing
* Fix: Mislabelling of function description
* CI: Enable pre-commit validation via MyPy
* Refactor: Cleanup MyPy errors
* Chore: Update pre-commit hooks
* CI: Require RELENG changes in commit messages

v0.36.2
-------

* Fix: Bugs in git.gerrit on nexus3 and sanity\_check
* Fix: Gerrit create\_project check results
* Feat: Add get-private-keys to lftools.jenkins
* Fix: Print upload size with deploy nexus stage

v0.36.1
-------

* Fix: INFO job template and sanity\_check call
* Fix: Do not fail tox if gerrit.acumos.org is down
* Fix: Force delay (take 2) between docker get calls
* Fix: Force delay between docker get calls

v0.36.0
-------

* Feat: New method add\_maven\_config for JCasC config
* Feat: Move git functions to use python git lib
* Test: Speed up Nexus tests
* Feat: Add get-secrets to lftools.jenkins

v0.35.11
--------

* Fix: Create temp file in empty dirs for S3 log dir
* Chore: Configure Flake8 linter
* Refactor: Resolve remaining flake8 violations
* Refactor: Resolve F811 and E712 and E501 in tests
* Refactor: Resolve Flake8 F401 and F403 and F405
* Refactor: Resolve flake8 E722 bare except
* Refactor: Resolve W605 Invalid escape sequence

v0.35.10
--------

* Fix: Incorrect indent skips calling deploy\_s3()
* Chore: Upgrade pre-commit hooks

v0.35.9
-------

* Fix: typo in deploy.py

v0.35.8
-------

* Fix: Refactor image clean
* Refactor: Fix flake8 F841

v0.35.7
-------

* Fix: Move text/html mimetype check to after None

v0.35.6
-------

* Fix: Add text/html mimetype to handle s3 logs
* Test: Improve unit test for nexus
* Refactor: Fix F401 module imported but unused
* Chore: Remove botocore from requirements.txt
* Refactor: Fix E713 form should be "not in"
* Refactor: Fix Flake8 E711
* Chore: Enable black for lftools
* Chore: Add isort to Python linters

v0.35.5
-------

* Fix: Add check for "stopped" before reading text

v0.35.4
-------

* Fix: Don't exit on error while collecting data for \_sys-info.log

v0.35.3
-------

* Fix: Nexus release logic and naming, add unit test

v0.35.2
-------

* Chore: Unpin requirements
* Refactor: Update setup.cfg due to deprecations
* CI: Properly run gitlint in CI
* CI: Configure gitlint for Conventional Commits
* Chore: Upgrade pre-commit hooks
* Refactor: Migrate shade library to openstacksdk
* Check dco\_signoffs files for missing DCO hashes
* Modified printouts when releasing staging repo
* Replace print statements with log

v0.35.1
-------

* Check ownerid and visibility on image cleanup

v0.35.0
-------

* Add create saml group to gerrit api
* Add user regexp for version tag validation
* Add --repofile to  releasedockerhub
* Preform check that disk-format maches
* Change ci-managed filter default to false

v0.34.2
-------

* Fix: openstack image upload defaults to qcow2
* Pin osc-lib to 2.2.0 to allow sharing images

v0.34.1
-------

* Remove pinned distlib requirement

v0.34.0
-------

* Remove dependency on pre-commit
* Update pre-commit hooks 2020-06
* Setup gitlint
* Print git-diff when pre-commit fails
* Use black version 19.10b0

v0.33.1
-------

* Fix string limit issue in \_request\_put\_file
* Fix voting math

v0.33.0
-------

* Add ODL exception
* Add S3 log shipping subcommand
* Add note to check for DCO exit status
* Add utils command
* Add password option to Nexus2 add user

v0.32.0
-------

* Changes for nexus2 automation
* Add Nexus3 user capabilities
* Use development mode for tox testenv
* Fix potential symlink loop in \_compress\_text()

v0.31.3
-------

* Not sure why lftools requires virtualenv

v0.31.2
-------

* Tweak initial project yaml file
* Fix initialization value of stack\_cost
* Replace python test harness
* Format lftools code with the Black code formatter

v0.31.1
-------

* Revert "Change the copy\_archives method to use..."

v0.31.0
-------

* Remove garbage var
* Change the copy\_archives method to use copy2
* Test released staging repo for closure
* Add nexus2 API endpoints

v0.30.1
-------

* Remove extra request error checking
* Add GitLint which replaces GitCommitBear

v0.30.0
-------

* Make output parsable
* Enable project\_version\_update
* Implement the Nexus 3 REST API in lftools
* lftools github create-team no longer requires repo

v0.29.1
-------

* Fix reviewid logic
* Fix jenkins info job creation
* Github cli project specific tokens
* Fix for empty INFO file creation

v0.29.0
-------

* Create gerrit project via gerrit api
* Support python 3.5.x
* Add openstack cost command
* Add .venv to .gitignore
* Add HTTPBasicAuth support to REST client
* Add missing releasenote
* Fix help text for github create team
* Add --exact to releasedockerhub
* Add extra output for lftools nexus release
* Catch errors thrown by check\_response\_code

v0.28.0
-------

* Add RTD project details update support
* Drop support for python2.7 and 3.4(EOL)
* Refactor API client to support more auth types
* Add "create role" subcommand for nexus
* Rewrite DCO check in python
* lftools info file generator
* Update lftools docs to install pyhton3
* Update pytest to python3

v0.27.1
-------

* Add support for RTD subprojects
* Refactored multithreaded nexus upload

v0.27.0
-------

* Switch volume delete to use the ID
* Remove python27 from tox env
* Add support for Read the Docs API v3
* Rework DCO with check and match commands

v0.26.2
-------

* Add lxml to requirements.txt to lftools
* Configure basepython to python3

v0.26.1
-------

* Do not copy sub-directory

v0.26.0
-------

* exit if errors are found in a nexus repo
* Changes needed in lftools for github orgs

v0.25.5
-------

* Support multiple nexus sections in lftools.ini

v0.25.4
-------

* Remove drop of staging repos on release

v0.25.3
-------

* Include auth credentials with release requests
* Fix commit message length
* Re-add display of group members
* Fix ldap check in gerrit create
* Change out lfidapi module print statements
* Fix retyping issue of function
* Pin pytest to 4.6.x

v0.25.2
-------

* Use requests.put for Nexus 2+3 compatibility

v0.25.1
-------

* Revert plugin listing print change
* Add --force option to stack delete

v0.25.0
-------

* Fix deploy\_logs unicode handling for Python 2 & 3
* lftools deploy archives handle dup patterns/file
* Handle archives is a file instead of dir
* Revert "Use six.text\_type rather than str.encode"
* Fix release notes typos
* Get jenkins config only with the key exists
* Use six.text\_type rather than str.encode('utf-8')
* Github api tools

v0.24.0
-------

* Move numpy dependency into coala linter
* Include \*.{html,xml} file extensions to compress
* add numpy to requirements
* lfidapi create group checks if group exists
* Fix release notes format
* Pin detox
* List insecure plugins
* Fix token generation
* Add documenation on lfidapi configuration
* Note in git-tag docs that tag must be annotated
* Titles wrong for gerrit infofile and lfid commands
* Remove python 3.4 support
* Update docs for git-tag and container signing

v0.23.1
-------

* Add git tag and Docker container sigul signing

v0.22.2
-------

* Fix OSError in lftools deploy archives
* Fix help text
* Fix AttributeError on HTTPError in deploy code
* Correct script exit condition

v0.22.1
-------

* Revert "Refactor deploy\_maven\_file from shell ..."

v0.22.0
-------

* Add lftools infofile check-votes
* Connect cli to release\_docker\_hub 7(7)
* Add multithread code to release\_docker\_hub 6(7)
* Add print functions to release\_docker\_hub 5(7)
* match-ldap-to-info matches ldap group to INFO file

v0.21.0
-------

* Expose Python commands to shell signer mode param

v0.20.0
-------

* Fix typo in Jenkins key
* lfidapi for lftools
* Add global extra roles for "nexus create repo"
* Allow requesting serial signing
* Pin more-itertools and update pytest
* Add command to list openstack containers
* Add "schema validate" command
* Fetch nexus3 catalog to release\_docker\_hub 4(7)
* Add main project class to release\_docker\_hub 3(7)
* Add tag classes to release\_docker\_hub 2(7)
* Add common functions to release\_docker\_hub 1(7)
* lftools gerrit create for new projects
* Fix corrupted zip/image upload
* Refactor deploy\_maven\_file from shell to python
* Add "nexus release" command
* pytest-responses requires pytest<4.1.0
* Only print docker image list if not empty
* Make URL example more clear
* Change default ldap server
* Add filenames from zip file to error string

v0.19.1
-------

* Fix UnicodeEncodeError when calling deploy logs
* function correct was replaced with sync-committers

v0.19.0
-------

* Fix autocorrectinfofile
* Only skip files start with maven-metadata.xml
* Print the time in seconds it took to upload
* Reword some of the upload output
* Output files being uploaded to Nexus
* Skip archive copying when pattern is blank
* Save previous dir and restore it before rmtree
* Refactor deploy\_nexus\_stage to Python
* Refactor of Deploy\_Nexus
* Add release note for upload\_maven\_file\_to\_nexus
* Refactor upload\_maven\_file\_to\_nexus to Python
* Use new internal \_request\_post\_file function
* Internal func \_request\_post\_file function
* Add defusedxml and glob2 to known 3rdparty
* Refactor Nexus stage repo close|create cmds
* Refactor Deploy Nexus Zip command to Python
* Refactor deploy-logs cmd to Python
* Refactor deploy-archives to Python
* Internal func \_log\_error\_and\_exit & \_request\_post
* Add jenkins and xdg to known 3rdparty
* Internal func \_format\_url() to verify url fmt
* Fix copy\_archives crash when pattern is None
* Fix cli creating /tmp/gpg-sig dir unexpectedly
* Test against explicit major versions of Python
* Refactor copy\_archives deploy function to Python
* Ignore .pytest\_cache directory in Coala
* Allow additional credential input methods
* Refactor config sys error handler
* Add docker list/delete subcommands for nexus
* Lock pre-commit to version 1.11.2
* Add --conf parameter to jenkins sub-cmd

v0.18.0
-------

* Update reno to 2.11.2
* Fix get-credentials subcommand
* Add cmd to clean up stale openstack heat stacks
* Fix typo in reorder-staged-repos help cmd
* Refactor the Jenkins object into a class
* Add token init cmd to add new server cfg
* Add cmd to reset API tokens in jenkins\_jobs.ini
* Add jenkins token cmd to retrieve the API token
* Move JJB\_INI to static variable
* Use logger instead of print in Jenkins CLI

v0.17.1
-------

* Disable fast fail on parallel sigul
* Enable universal wheel
* Add cmd to upload openstack images
* Add cmd to share openstack images
* Remove prelude
* Use reno 2.10.0 and remove reno.yaml

v0.17.0
-------

* Add npm metadata to .gitignore
* Use logger instead of print in version module
* Update config subsystem to use logger
* Only print extra log details in DEBUG mode
* Enable or disable Jenkins jobs matching regex
* Deduplicate test requirements
* Add support to jenkins cmd for jenkins\_jobs.ini
* Add ruamel.yaml and yaml as known 3rdparty

v0.16.1
-------

* Make ldap module optional

v0.16.0
-------

* Remove summary/version which comes from PBR now
* Add option to enable debug logs
* Simplify logging configuration
* Add extras declaration in docs-linkcheck
* Fix broken help from openstack and sign cmds
* Add stack create & delete commands
* Extend lftools with scripts for ldap lookups
* Use reno for release notes
* Setup PBR for lftools
* Remove unnecessary echo
* Bump to 0.16.0-dev

v0.15.0
-------

* Release lftools v0.15.0
* Handle snapshot artifacts in get\_file\_info()
* Add utility to check repos for commits missing DCO
* Add optional classifier def to deploy cmd
* Add cURL command to push an artifact to Nexus
* Split Nexus staged repo create & close functions
* Add pre-commit hook for trailing-whitespace
* Bump version to 0.15.0-dev for next dev cycle

v0.14.0
-------

* Release lftools v0.14.0
* Add sigul signing capabilities to lftools
* Add configuration subsystem
* Update to python-jenkins 1.1.0
* Fix ShellCheck warnings for signing script
* Add options to continue interrupted downloads
* Update Nexus string substition formating
* Cleanup nexus repo command for Python 3
* Add user-specified download path for lftools sign
* Add remove-offline-nodes command
* Add Nexus tags
* Add tag to Nexus docs
* Update Nexus settings example
* Add get-credentials groovy script to lftools
* Print result of groovy script to console
* Ignore protected images that are protected
* Pin python-jenkins to 0.4.16
* Bump version to 0.14.0-dev

v0.13.0
-------

* Release lftools v0.13.0
* Simplify Nexus 2 repo target regex
* Make OpenStack requirements optional
* Add test for latest upstream of dependencies
* Move tests requirements to separate file
* Remove trailing slashes in nexus\_url
* Add pytest cache to .gitignore
* Pin requests and python-jenkins
* Fail Sphinx build even on warnings
* Bump version to 0.13.0-dev

v0.12.4
-------

* Release lftools v0.12.4
* Fix remove volume time format
* Bump version to 0.13.0-dev

v0.12.3
-------

* Release lftools v0.12.3
* Fix volume remove command polling wrong metadata
* Bump version to 0.13.0-dev

v0.12.2
-------

* Release lftools v0.12.2
* Add support for volume management
* Bump version to 0.13.0-dev

v0.12.1
-------

* Release lftools v0.12.1
* Pin netifaces to 0.10.5
* Bump version to 0.13.0-dev

v0.12.0
-------

* Release lftools v0.12.0
* Add lftools command to remove specific server
* Bump version to 0.12.0-dev

v0.11.2
-------

* Release lftools v0.11.2
* upload\_to\_nexus to return a non-zero exit status
* Switch to using lfdocs-conf 0.1.3
* Add a groovy command to lftools
* Switch lftools to lfdocs-conf
* Improve debugging output for deploy nexus-zip cmd
* Fix ShellCheck v0.4.7 lint issues
* Bump version to v0.12.0-dev

v0.11.1
-------

* Release lftools v0.11.1
* Fix wget command for Nexus sign script
* Print CPU, Memory, Disk and Network stats
* Bump version to v0.12.0-dev

v0.11.0
-------

* Release lftools v0.11.0
* Automatically hide protected images
* Update openstack cmd to support ci\_managed filter
* Suppress GNU parallel notice on every run
* Add a snapshot mode to the deploy-nexus command
* Fail gracefully when no files to sign
* Use parallel to sign when available
* Bump version to v0.11.0-dev

v0.10.0
-------

* Release lftools v0.10.0
* Rename docs requirements for better sorting
* Add LF Logo
* Add custom navbar ala OpenDaylight docs
* Bump Sphinx minimal dependencies to latest
* Remove best practices guide from lftools
* Add cross link
* Update setuptools version
* Refactor descriptions to README.md and \_\_summary\_\_
* Re-order log ENV stripping and add new key
* Update JJB best practices
* Spell check fixes in best practices
* Bump version to 0.10.0-dev for next dev cycle

v0.9.0
------

* Release lftools v0.9.0
* Exit script with error if artifacts fail download
* Use gpg2 if available
* DO NOT archive if filename is longer than 255
* Add a best practice for JJB templates
* Add suport for .tgz and .gz file extensions
* Set a default logger if file methods fail
* Bump version to 0.9.0-dev

v0.8.0
------

* Set version to 0.8.0 for release
* Release lftools v0.8.0
* Add all release notes up to date
* Re-factor deploy maven file to remove dup code
* Convert license print statements to logger
* Fix best practice doc example code indent
* Verify lftools scripts have license headers
* Bump version to 0.8.0-dev

v0.7.0
------

* Release lftools v0.7.0
* Document installation of lftools
* Use logger for Nexus create repo script
* Implement lftools logger
* Ignore shebang when evaluating license headers
* Use a regex pattern instead for license searching
* Trim trailing slashes from URL inputs
* Make maven deploy-file more generic
* Pass maven parameters to deploy maven-file
* Add script to fix yamllint errors
* Add CONTRIBUTING file
* Enable MarkDown linting
* Add a license header scanner
* Improve .coafile rules using inheritance
* Fix first/third party import sorting
* Add missing license header in test\_version.py
* Fix docs underline too short in deploy docs
* Ignore linkchecking Google blog
* Bump version to 0.7.0-dev

v0.6.0
------

* Release lftools v0.6.0
* Disable Maven transfer output
* Add Code Review checklist
* Document the use of {obj:key} notation
* Update SPDX License header to new format
* Add write-good linting for docs
* Fix write-good lint errors
* Shorten title and add description
* Add Sign command documentation
* Filter creds before writing to logs
* Copy sign scripts over to lftools
* Bump version to 0.6.0-dev

v0.5.0
------

* Release lftools v0.5.0
* Deploy to Nexus using parallel
* Improve deploy error message
* Add command to deploy nexus-zip files
* Re-organize functions alphabetically
* Use a multiline string for description
* Bump version to 0.5.0-dev

v0.4.0
------

* Release lftools 0.4.0
* Add deploy maven-file command to lftools
* Add a README to locate the online docs
* Link deploy commands into commands index
* Improve error detection for when SSL invalid
* Bump version for next dev cycle

v0.3.0
------

* Release lftools v0.3.0
* Add deploy nexus-stage command
* Add deploy nexus command
* Report memory usage with sys-info
* Ensure shell scripts exit with proper status codes
* Add Jenkins to LF Tools
* Remove unused variable
* Improve lftools description to include dependencies
* Bump version for next dev cycle

v0.2.0
------

* Release lftools v0.2.0
* DO NOT version bump after tagging
* Add artifact base target to nexus configuration
* Add openstack server list and cleanup commands
* Amend .gitignore for vscode editor
* Pin babel version
* Prepare for next dev cycle

v0.1.0
------

* Release v0.1.0
* Prevent PBR from getting installed
* Add JJB best practices
* Add deploy command to lftools
* Fix .gitreview to point to the correct place
* Prepare for next dev cycle

v0.0.10
-------

* Release v0.0.10
* Add minimum setuptools version
* Bump version to next dev version

v0.0.9
------

* Release v0.0.9
* Prevent requests 2.13.0 from being installed
* Fix syntax error
* Bump dev version and update description

v0.0.8
------

* Add openstack image list and cleanup cmds
* Add docs on how to setup coala
* Use PEP8Bear
* Reorg .coafile for better handling of bears
* Convert project\_builder code to lftools
* Reformat lftools cmd docs for sphinx and click
* Remove Contributor list
* Run tests against both Python 2 and Python 3
* Add .editorconfig
* Nexus2 and Gerrit project builder
* Unify versions to a single location

v0.0.7
------

* Add patch-odl-release as a subcommand of version
* Fix archives script "File exists" spam
* Make create version tests easier
* Fix RTD generation of Shell docs
* Fix RTD generation of Shell docs

v0.0.6
------

* Release version 0.0.6
* Add unit tests for version script
* Add Python linting in coala
* Fix shellcheck issues in deploy-archives script
* Create lftools cli
* Convert version bump script to functions
* Move deploy-archives script into shell dir
* Create a git status report at the end of build
* Make message more clear
* Reduce verbosity of shiplogs
* Filter out bad environment variables
* Prefix timestamps on archived console logs
* Rename \_console-output.log to console.log
* Redirect zip logs to file and store on logs.o.o
* Gzip \*.bundle files in archives/patches
* Enable system stats for archive-build macro
* Change log servers and url to support parameter
* Job for bindingv1 suite
* Wrap ARCHIVE\_ARTIFACTS variable with quotes and braces
* Improve archive-build macro to gzip any text file
* Improve archive-build to archive using globstar
* Print out environment variables to file
* Fix archiving script to trim the end of the log file
* Print size of archives.zip
* Rework archives directory format
* Remove Gerrit notification script
* Add macro to deploy archives to Nexus
* Add SpaceConsistencyBear
* Use coala got run ShellCheck
* Run shellcheck by default with tox
* Add ShellCheck to tox
* Fix ShellCheck for patch-odl-release
* Set minimum theme requirements
* Initialize lftools docs
* Add basic setup.py
* Add a fairly basic .gitignore
* Bump versions also in repo-pom.xml files
* Improve release script to handle new release workflow
* Fix version.sh to handle date-only version correctly
* Fix version.sh to handle date-based versions correctly
* Update bumping script to merge from git bundles
* Fix taglist script to include subprojects
* Improve grep in case 2 projects with similar name
* Update release scripts to match stable/lithium
* Bug 3453 : Error in running version.sh
* Improve comments and when usage is printed
* Improve version.sh to handle SNAPSHOT->RELEASE
* Add wrapper script that produces commits for releases
* Add version-bump.sh
* Add .gitreview
* Initial empty repository
