scap (3.11.0-1) unstable; urgency=low

  [ Tyler Cipriani ]
  * Fix failed canary threshold logging

  [ Giuseppe Lavagetto ]
  * Remove functionality to talk to conftool

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Wed, 03 Jul 2019 16:33:10 -0600

scap (3.10.0-1) unstable; urgency=low

  [ Antoine Musso ]
  * Revert "Get rid of .gitreview" (Bug: T191373)

  [ Effie Mouzeli ]
  * Updated .gitignore for .idea/ directories

  [ Roan Kattouw ]
  * Clear MessageBlobStore after syncing i18n data (Bug: T222539, T217719)

  [ Tyler Cipriani ]
  * clear_message_blobs: no logger in context
  * clear_message_blobs: call once (Bug: T222539)
  * Bump version to 3.10.0

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Mon, 03 Jun 2019 11:17:12 -0600

scap (3.9.2-1) unstable; urgency=low

  * Targets: strip spaces from service_groups (Bug: T217597)

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Mon, 04 Mar 2019 16:16:16 -0700

scap (3.9.1-1) unstable; urgency=low

  [ Giuseppe Lavagetto ]
  * Fix OpcacheManager.invalidate_all()

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Wed, 27 Feb 2019 13:25:12 -0700

scap (3.9.0-1) unstable; urgency=low

  [ Tyler Cipriani ]
  * pipeline: test scap with CD pipeline
  * Docs: remove references to differential

  [ Antoine Musso ]
  * Change message to 'Copying from x to y'

  [ Giuseppe Lavagetto ]
  * Invalidate PHP7's opcache when needed (Bug: T211964)
  * Rewrite the concurrency logic of OpcacheManager (Bug: T211964)

  [ MarcoAurelio ]
  * Fix flake8 "F632 use ==/!= to compare str, bytes, and int literals" error

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Wed, 20 Feb 2019 16:39:39 -0700

scap (3.8.10-1) unstable; urgency=low

  * sync-wikiversions - don't do shell expansion

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Tue, 27 Nov 2018 11:40:31 -0700

scap (3.8.9-1) unstable; urgency=low

  * Fix ascii art regression

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Wed, 07 Nov 2018 10:50:18 -0700

scap (3.8.8-1) unstable; urgency=low

  [ Tyler Cipriani ]
  * Remove '/' from include in sync-wikiversions (Bug: T207602)
  * Fix "invalid escape sequence '\' (W605)"
  * Error: --service-restart without a service_name (Bug: T207263)

  [ Mukunda Modell ]
  * scripts/new_version - crude automation of the release process

 -- Mukunda Modell <mmodell@wikimedia.org>  Tue, 06 Nov 2018 21:04:33 -0600

scap (3.8.7-1) unstable; urgency=medium

  [ Mukunda Modell ]
  * Check for fatals in AbstractSync by calling `mwscript eval.php`

  [ Tyler Cipriani ]
  * Add logging for mwscript eval.php check

  [ Mukunda Modell ]
  * Bump version to 3.8.7

 -- Mukunda Modell <mmodell@wikimedia.org>  Wed, 03 Oct 2018 08:39:35 -0500

scap (3.8.6-1) unstable; urgency=low

  [ Tyler Cipriani ]
  * Add ability to specify PHP version for scap (Bug: T203680)

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Fri, 14 Sep 2018 15:05:18 -0600

scap (3.8.5-1) unstable; urgency=low

  * sync-wikiversion: don't overwrite AbstractSync (Bug: T198640)
  * Add --force to AbstractSync
  * Skip cache_git_info for sync-wikiversions

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Fri, 31 Aug 2018 12:52:00 -0600

scap (3.8.4-1) unstable; urgency=low

  * Support utf-8 for config templates (Bug: T198621)
  * Refactor canary_checks method

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Tue, 10 Jul 2018 15:51:53 -0600

scap (3.8.3-1) unstable; urgency=low

  [ Chad Horohoe ]
  * Scap plugins: Tidy up imports for py3 transition
  * Unify keyboard exit handling
  * Unify stats increment calls in sync operations
  * Consistent return statements on functions that already have them
  * Remove pointless unicode distinctions on ASCII
  * lint.py: Move number of processes to callers

  [ Tyler Cipriani ]
  * Warn about setting git_server in docs
  * Remove HHVM restart

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Tue, 26 Jun 2018 15:20:21 -0600

scap (3.8.2-1) unstable; urgency=low

  * Don't recurse submodules as part of fetch (Bug: T196663)

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Thu, 07 Jun 2018 16:44:48 -0600

scap (3.8.1-1) unstable; urgency=medium

  * MediaWiki: Fix for sync-l10n (Bug: T192801)

  * MediaWiki: Canaries now use swagger spec (Bug: T136839)

  * Mediawiki: get_disclosable_head fixes

  * Scap3: Will show more on stdout than previously. Previously only ssh info
    was in case of errors (Bug: T182623)

  * Scap3: git-lfs will now run install prior to git-lfs pull, should be close
    to the last round of changes for git-lfs support.

  * Tests got updates for py2/3 compat, specifically using io vs StringIO

  * Further cleanup of cdblib

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Thu, 03 May 2018 15:15:36 -0600

scap (3.8.0-2) unstable; urgency=medium

  * Switch package back to architecture: all

 -- Mukunda Modell <mmodell@wikimedia.org>  Fri, 20 Apr 2018 04:52:09 -0500

scap (3.8.0-1) unstable; urgency=medium

  * git-lfs support is graduating from beta to production.
  * Always log check output (even when the check succeeds.)
  * Add timer info to the cdb rebuild stage of scap pull
  * cdblib: Drop (get|put)(string|int)s?
  * Various python3 compatibility changes
  * Improved Docs.

 -- Mukunda Modell <mmodell@wikimedia.org>  Wed, 18 Apr 2018 15:43:01 -0600

scap (3.7.7-1) unstable; urgency=medium

  * Added git-lfs support
  * Added `script` check type and environment variables
  * Added quick environment variable to disable scap plugins
  * Removed `scap l10n-update` and `scap hhvm-graceful`
  * Updated documentation for checks

 -- Mukunda Modell <mmodell@wikimedia.org>  Wed, 7 Mar 2018 15:54:01 -0600

scap (3.7.6-1) unstable; urgency=medium

  * Fix unrecognized git_binary_manager compatibility (fixes T184882)

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Sun, 14 Jan 2018 14:55:01 -0700

scap (3.7.5-1) unstable; urgency=medium

  [ Chad Horohoe ]
  * Abstract configuration of git-fat support into git_binary_manager
  * scap gains +2 cuteness
  * Migrate to pytest

  [ Mukunda Modell ]
  * Make it more obvious when we are using `git_rev` in scap.cfg

  [ Tyler Cipriani ]
  * scap.sh logging is alarming (stop excessive console logging)
  * Add debian/README to release branch
  * Scap say: moar cowsay compat
  * Log message to explain canary behavior

 -- Mukunda Modell <mmodell@wikimedia.org>  Thu, 11 Jan 2018 15:58:41 -0600

scap (3.7.4-3) unstable; urgency=high

  * Bumped version number to one more botched release. T183046

 -- Alexandros Kosiaris <akosiaris@wikimedia.org>  Mon, 18 Dec 2017 11:42:27 +0000

scap (3.7.4-2) unstable; urgency=medium

  * Bumped version number to fix wrong release. See T182347#3838535

 -- Alexandros Kosiaris <akosiaris@wikimedia.org>  Fri, 15 Dec 2017 17:22:56 +0000

scap (3.7.4-1) unstable; urgency=medium

  * Disk usage: Cache submodules and use --reference to save space
    
  * Logging: Don't lie when sync-wikiversions actually failed

  * Premium Feature: New scap sayings

  * Internals: Use the `sh` library to wrap git commands.

  * Logging: Correct action for no-log-message

  * Disk usage: Add a config key `cache_revs` to specify how many revs to keep

  * Modernization: Migrate from nosetests to pytest, plus tons of changes for
    python 3.x compatibility.

  * Logging: pass `-v` to ssh when running `scap deploy -v`

 -- Mukunda Modell <mmodell@wikimedia.org>  Thu, 07 Dec 2017 11:35:58 -0600

scap (3.7.3-1) unstable; urgency=low

  * Announce fix: correct action for command line argument

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Tue, 14 Nov 2017 07:49:21 -0700

scap (3.7.2-1) unstable; urgency=medium

  * Improve CLI help messages for the deploy command

  * If git_repo isn't set, lock scap sync*

  * All deploys use specific keyholder key

  * Packaging: Add php-cli to Debian suggests options

  * Fix local variable 'search_path' referenced before assignment

  * Nicer logging syntax, less characters

  * Consistently SHOUT AT PEOPLE FOR CONSTANTS

  * Remove support for DOLOGMSGNOLOG environment variable

  * When syncing a symbolic link, also note what the symlink points to

  * Tech Debt: A bunch of internal code cleanup and preparation work for
    python 3 compatibility.

 -- Mukunda Modell <mmodell@wikimedia.org>  Thu, 09 Nov 2017 18:46:39 -0600

scap (3.7.1-1) unstable; urgency=low

  * Move php5-cli | hhvm to Suggests

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Thu, 12 Oct 2017 09:47:36 -0600

scap (3.7.0-1) unstable; urgency=low

  * Added a code of conduct file

  * MediaWiki: Use co-masters as proxies when doing sync to canaries and
    proxies

  * Scap3: Learned to use a specific keyholder key when specifying
    keyholder_key in `scap.cfg`. This should limit the number of keys tried by
    keyholder that have led to the `too many authentication failures` message
    (fixes T172333)

  * Scap3: Now only logs that it is running the "restart_service" phase when
    it actually restarts a service

  * Scap3: Uses the yaml values for yaml templates in `scap/config_files.yaml`
    (fixes T145510)

  * Scap3: Learned how to ensure a service is not masked and exists when you
    specify `require_valid_service` in `scap.cfg`.

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Thu, 31 Aug 2017 10:48:38 -0600

scap (3.6.0-2) unstable; urgency=medium

  * Add alternative dependency on php-cli for stretch compat

 -- Filippo Giunchedi <filippo@wikimedia.org>  Thu, 27 Jul 2017 11:06:17 +0200

scap (3.6.0-1) unstable; urgency=low

  * MediaWiki: no longer has --no-touch / --beta-only-change

  * MediaWiki: Create a wrapper around conftool for our pooling/depooling needs

  * MediaWiki: canaries: only fail deployment if 1/4 canaries fail

  * Scap3: learned how to handle multiple service restart/reload

  * Scap3: Don't update SHA1 for --service-restart or --dry-run

  * Docs: got some minor doc fixups

  * Packaging cleanup: Move PHP to required packages, also allow
    HHVM to satisfy the dependency, move python-semver from Depends to
    Suggests

  * Remove unused code: utils.deprecated_script(), functions introduced in D72

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Tue, 25 Jul 2017 13:58:14 -0600

scap (3.5.8-1) unstable; urgency=low

  * In which Chad cleans up our messes: Lots of pylint, and python3
    compatibility work in this release.

  * MediaWiki: Scap learned to yell in IRC when canary deploys of MediaWiki
    fail. It also provides a link to a logstash dashboard so we find out what
    went wrong.

  * MediaWiki: Scap will run scap pull on all co-masters after syncing the
    staging directory to ensure that even out-of-sync targets get the correct
    code.

  * MediaWiki: Remove unused tasks.purge_l10n_cache()

  * MediaWiki and Scap3: Unify lock file handling between `deploy` and `sync`

  * Scap3: bugfix for lock excuses

  * Add semver package to our dependencies

  * Scap learned the `scap lock` command for locking deployments

  * There is a `scap version` command now \o/

  * `scap say/fortune` learned some additional propaganda added at our
    offsite. You're welcome.

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Mon, 05 Jun 2017 12:11:35 -0600

scap (3.5.7-1) unstable; urgency=low

  * Fix _get_lock_excuse

  * MediaWiki: Don't recache git info on sync-l10n since this is run by
    l10nupdate (fixes T163671)

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Thu, 27 Apr 2017 16:21:34 -0600

scap (3.5.6-1) unstable; urgency=low

  * Scap global lock file fix

  * MediaWiki: scap no longer looks for php5 or phtml files to lint

  * Scap3: scap deploy now has a new --dry-run option. This option causes the
    config_diff stage to run on the target. This option renders the
    configuration files being deployed by a repo in a temprorary file and
    diffs them against the live version of the files. The diff is sent to scap
    deploy-log for review by the deployer. Nothing is deployed as part of a
    deploy --dry-run.

  * Scap3: scap deploy will now announce the environment along with commit if
    the environment to which a repo is being deployed is not the default.

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Mon, 24 Apr 2017 17:17:36 -0600

scap (3.5.5-1) unstable; urgency=low

  * Scap now only looks in /etc/scap.cfg and at individual repos to find its
    configuration.

  * Scap3: The configuration merges from global to environment-specific for
    vars.yaml, checks.yaml, and scap.cfg

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Mon, 10 Apr 2017 15:54:12 -0600

scap (3.5.4-1) unstable; urgency=low

  * Scap is now licensed under GPLv3 thanks to mmodell for spearheading this
    effort!

  * Scap's logger learned to tolerate remote messages that contain a percent
    sign that isn't being used as part of a format string.

  * Scap lock code has been moved to its own module.

  * MediaWiki: all syncs will now update git info for MediaWiki and
    extensions.

  * MediaWiki: scap learned to use the absolute path when running sync
    commands. This means you can now run sync commands outside
    /srv/mediawiki-staging and they should still work (Fixes: T162220 --
    thanks TimStarling for your help tracking this down!).

  * Scap3: scap learned to reloading services in addition to being able to
    restart them (Fixes: T134001).

  * Scap3: scap say learned some new things to say...

  * Scap3: some FancyProgressReporter updates and improvements have been made.

  * MediaWiki on Scap3: Scap now ensures that the git directory created in
    /srv/mediawiki has all files including those that may be .gitignored in
    /srv/mediawiki-staging. This is needed to move to git-based syncs of
    MediaWiki.

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Wed, 05 Apr 2017 11:31:03 -0600

scap (3.5.3-1) unstable; urgency=low

  * Deduplicate git authors via .mailmap
  * Scap for MediaWiki now will do sync-common before rebuilding l10n files
    (fixes T156851)
  * Don't bother doing syntax checks for symlink syncs

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Mon, 27 Feb 2017 11:53:24 -0700

scap (3.5.2-1) unstable; urgency=low

  * Add simple subcommand for logging to server admin log
    Sometimes it's annoying to context switch back to IRC. Also, there's been
    some talk about removing the IRC dependency for logging, so this would
    provide a useful fallback

  * Fix `failure_rate` percentages
    Configuring a `failure_rate` as a string percentage (e.g. '10%') now
    correctly calculates an integer (number of targets) based on the
    original size of the deploy group, not the `group_size` which splits
    groups into smaller subgroups.

  * Exclude empty deploy groups
    Avoid zero-size related bugs by validating `targets.DeployGroup` input,
    disallowing an empty targets list and/or a size of less than 1, and by
    refactoring `TargetList.get_deploy_groups` to skip inclusion of empty
    groups.

  * Make checks serial by default
    This is an update so that checks better fit deployer's (and my) mental
    model of checks. This also enables the workaround of having a check
    using the command `sleep 30` delay the execution of a subsequent check
    proposed in T156687.

  * Add sync_submodule() and use it in deploy().

  * Fix regression of deploy group continue prompt
    With D490 came a regression in the behavior of the continue prompt
    whereby the prompt was only given after each originally configured
    deploy group and not the smaller subgroups resulting from the configured
    `group_size`. The original behavior has been restored.

  * Fix MediaWiki git ident errors
    Because we use GIT_* environmental variables to indicate the deployer as
    the git commit author and the ssh_user as the git commiter those values
    will override anything in any git configuration files. As a result, an
    empty string for any one of those values will result in an ident (or
    similar) error in git.

 -- Mukunda Modell <mmodell@wikimedia.org>  Tue, 14 Feb 2017 08:34:36 -0600

scap (3.5.1-1) unstable; urgency=low

  * MediaWiki scap3 feature flag

  [ Tyler Cipriani ]

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Mon, 30 Jan 2017 13:36:15 -0700

scap (3.5.0-1) unstable; urgency=low

  * MediaWiki: Old stub entry points for scap (e.g., sync-file, sync-dir,
    mwversionsinuse, etc) are gone. Formerly old binstubs simply exited with a
    non-zero exit code. Subcommands are now the only way to scap.

  * MediaWiki: the canary logstash check for MediaWiki deploys now supports an
    explicit service name (via the `canary_service` configuration variable).
    This will allow us to monitor HHVM errors as well as MediaWiki errors on
    the canary hosts before a deployment. (Fixes T154646, T142784)

  * Scap3: Scap's rollback behavior has been greatly improved. Scap supports a
    global `failure_limit` and a per-group `failure_limit` -- if a deployment
    exceeds the number or percentage of failures specified by this limit a
    deploy will fail and you will be prompted to rollback. Also, if you opt to
    *not* continue a deployment on remaining deploy groups, you will receive
    the option to rollback. (Fixes T149008)

  * Scap3: This scap release has some rollback logic fixes. First, if there is
    initial ssh failure for a host, scap will no longer attempt a rollback on
    that host (since the same ssh failure will likely cause a rollback
    failure). Next, all previously deployed groups of servers will now be
    rolled-back -- not just the group of servers that had failures. (Fixes
    T150267 T145460)

  * MediaWiki: /srv/mediawiki is now a flattened git directory. This is the
    first step towards moving MediaWiki deployments to Scap3. This is not a
    change for deployers, but is a needed internal change.

  * MediaWiki: `scap sync-file` and `scap sync-dir` are the same command
    internally. `scap sync-dir` is deprecated.

  * MediaWiki: scap now checks if proxies and canaries are listed among the
    pooled servers (in mediawiki-installation) before attempting to deploy to
    those hosts.

  * MediaWiki/Scap3: A fancier progress bar is available. Simply set
    `fancy_progress: True` in your config file to use it.

  * MediaWiki: The `scap l10n-purge` subcommand is no more. Removed as it was
    largely unused and was broken without notice for quite some time.

  * Scap3: Old scap-created tags will now be removed from the deployment host
    as part of the deployment. The number of tags to keep is controlled by the
    `tags_to_keep` configuration variable. By default, scap keeps 20 tags.

  * Scap3: in a shameless attempt to promote the use of messages for the
    Server Admin Log for non-MediaWiki deployments the default Server Admin
    Log message has been changed from "(no message)" to "(no justification
    provided)"

  * Internally, scap now uses wildly experimental Docker tests for CI and
    local testing. All tests are now being run by CI (which was not true in
    the past).

  * Scap is moving closer to supporting python3, small changes in this release
    bigger changes are yet to come.

  * Scap's scap say command is now more compatible with cowsay(6). It now
    supports passing messages on stdin as well as the `--eyes` flag.

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Wed, 25 Jan 2017 15:21:06 -0700

scap (3.4.2-1) unstable; urgency=low

  * "scap sync-l10n" now has the message argument (fixes T152390)

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Wed, 14 Dec 2016 11:16:42 -0700

scap (3.4.1-1) unstable; urgency=low
  * "scap deploy" no longer reports local commits when logging, now relies on
    last common ancestor with upstream. Prevents leaking security patches and
    instead reports public info.

 -- Chad Horohoe <chad@wikimedia.org>  Thu, 1 Dec 2016 21:03:19 -0000

scap (3.4.0-1) unstable; urgency=low

  * BREAKING CHANGE: Old scap bin stubs (e.g., sync-file, sync-dir,
    mwversionsinuse, etc) will now exit 1, subcommands are now the only way to
    interact with scap, i.e., sync-file is now scap sync-file.

  * Scap linter now ignores auto autoload_static.php which was known to fail
    lint checks (Fixes T136009 - thank you Paladox)

  * Scap adds the sha1 of the commit being deployed to the announce log --
    this change affects scap3 repos.

  * This release fixes a bug where variables specified in vars.yaml were being
    overwritten in the opposite order (Fixes T150897)

  * Scap lockfiles now contain the message passed in the deployment, i.e. scap
    sync-dir wmf-config 'Update config' will create a lockfile with the
    message 'Update config'. If anyone else attempts to deploy while that
    lockfile is in place, they will be shown the lockfile message.

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Mon, 28 Nov 2016 09:03:50 -0700

scap (3.3.1-1) unstable; urgency=low

  * Scap learned how to lock all deployments at the server level. Previously
    it only knew how to lock deployments at the repo level.

  * Scap now tells users who holds the lock file (when deploys are locked).
    Permissions on the lockfile have changed to 600, making it harder to
    overwrite (Fixes T140914).

  * "scap sync-file" and "scap pull" got new flags, "--beta-only-change" and
    "--no-touch", respectively. When used, this prevents the normal action
    taken by "scap pull" to touch the wmf-config/InitialiseSettings.php file
    which invalidate local caches.  This allows some syncs to avoid a
    potential problem with HHVM servers exhausting local cache when reading
    new files from disk. The option is now also always passed to `scap pull`
    by `scap sync-l10n` (fixes T149872 -- thank you Bryan Davis).

  * Scap learned to announce scap3 deployments in IRC. This should mean that
    deployers will no longer have to announce a deployment manually in
    *-operations -- scap will do it for them.

  * Scap3 updated the way it limits hosts and can now limit hosts from all
    groups, not just the default group (Fixes T149128).

  * HHVM restarts now happen via the /usr/local/bin/restart-hhvm script. This
    means that an individual server is now depooled via confctl before being
    restarted (thank you Giuseppe Lavagetto).

  * Scap3 learned about empty checks in the checks.yml file. This allows you
    to overwrite global checks in an environment specific checks.yml. These
    checks will be logged, but nothing will run (fixes T149668).

  * Scap3 added a "finalize" stage of deployment. This will allow for "promote"
    checks to execute before the final state is recorded and clean up of old
    rev directories is performed, and overall result in more consistent
    rollback behavior (Fixes T150267)

  * Scap learned how to use sub-sub commands, i.e., scap subcommand
    subsubcommand. None are yet implemented.

  * scap l10n-purge works once again, and restart_hhvm was restored (Fixes
    T146656).

  * Internally, scap simplified its usage of sudo calls. This means the
    internals are a bit more sane, unnecessary sudo calls, i.e., sudoing as
    yourself is less common throughout the code.

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Thu, 10 Nov 2016 13:41:28 -0800

scap (3.3.0-1) unstable; urgency=low

  * "scap deploy" can use an environment-specific config by adding an
    'environment' key under a domain in the scap.cfg ini file. Now
    environment-specific settings can apply to specific domains without the
    need to use the "--environment" flag (Closes: T134156).

  * "scap deploy-local" caches the last fetched .git/DEPLOY_HEAD locally at
    [repo]-cache/.config. As a result, deploy-local will no longer necessarily
    fetch .git/DEPLOY_HEAD at every stage of a deploy. This allows for the use
    of "scap deploy-local config_deploy" when a target is out-of-sync with the
    deployment server (Closes: T145373).

  * "scap deploy-local" got a new flag "--refresh-config" that will make
    deploy-local fetch .git/DEPLOY_HEAD from the deployment server. "scap
    deploy", internally, will use "scap deploy-local --refresh-config" at
    every stage of deployment to retain the old behavior of fetching a fresh
    copy of the config for each stage of deployment.

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Thu, 22 Sep 2016 15:54:26 -0700

scap (3.2.5-1) unstable; urgency=low

  [ Tyler Cipriani ]
  * Fix tab completion
    Tab completeion now works like git, i.e., it puts a space after the
    command but not after a completed directory name. Tab completion was
    slowing down deployers as it put an extra space after EVERYTHING.
    (Closes: T144244)
  * Make directories as euid
    Previously directories were being made as ruid. This was causing breakage
    as we move towards using config deployment (\o/) for Mathoid
    (Closes: T145194)

  [ Mukunda Modell ]
  * Add a better user prompting functionscap.utils.confirm
    needed as utils.ask proved to be a bit inflexible.
  * Look for plugins in user home directory.
    Find and load plugins from both ./scap/plugins and ~/.scap/plugins.

  [ Marko Obrovac ]
  * Docs: Introduce config_deploy and erb_syntax
    When doing config deploys, one needs to specify config_deploy in
    scap.cfg. Likewise, Scap3 has the neat feature where one can use the ERB
    syntax in templates, which eases the transition from Puppet.

  [ Chad Horohoe ]
  * Improve rsync behavior between masters/proxies/targets
    This should save like 8-9 useless rsync's during the sync-apaches stage
    and moves the co-master rsync (currently 1) to a more appropriate place

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Fri, 09 Sep 2016 13:19:29 -0700

scap (3.2.4-1) unstable; urgency=low

  [ Dan Duvall ]
  * Support configuration for more serial group execution
  * Support skipping remaining continue prompts

  [ Tyler Cipriani ]
  * Bump version to 3.2.4

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Fri, 26 Aug 2016 16:02:13 -0700

scap (3.2.3-1) unstable; urgency=low

  [ Chad Horohoe ]
  * Fix up default logstash host

  [ Tim Starling ]
  * Better origin story

  [ Bryan Davis ]
  * sync-wikiversions: Add missing sync steps
  * Remove hanging indents

  [ Tyler Cipriani ]
  * Remove debug config logging

  [ Mukunda Modell ]
  * load scap cli.Applications from $PWD/scap/plugins/*.py

  [ Tyler Cipriani ]
  * Fix rollback
  * Bump upstream version to 3.2.3

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Mon, 15 Aug 2016 14:47:02 -0700

scap (3.2.2-1) unstable; urgency=low

  * Don't explode when no checks.yml is found
  * Bump upstream version to 3.2.2

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Tue, 02 Aug 2016 08:24:50 -0700

scap (3.2.1-1) unstable; urgency=low

  [ Tyler Cipriani ]
  * Update docs to use subcommands rather than scripts
  * Checks and config-file-deploy in DEPLOY_HEAD
  * Checks.py load expects config dict

  [ Amir Sarabadani ]
  * load and run checks with keeping order in the yaml file
  * The second pass on PEP257

  [ Tyler Cipriani ]
  * Better deploy-log messages

  [ Amir Sarabadani ]
  * Third pass on PEP257

  [ Sébastien Santoro ]
  * Improve README case

  [ Tyler Cipriani ]
  * Fix doc generation
  * Refactor target object properties
  * Add autocompletion

  [ Chad Horohoe ]
  * scap2: Remove useless check for pybal_interface

  [ Tyler Cipriani ]
  * Add canary checks in AbstractSync
  * Bump upstream version to 3.2.1

 -- Tyler Cipriani <tcipriani@wikimedia.org>  Fri, 29 Jul 2016 12:11:14 -0700

scap (3.2.0-1) unstable; urgency=low

  [ Filippo Giunchedi ]
  * default options for git-buildpackage

  [ Mukunda Modell ]
  * Load extension-list from the branch if present.

  [ Dan Duvall ]
  * Support per-check timeouts

  [ amir ]
  * First pass on PEP257

  [ Mukunda Modell ]
  * Fix lintian warnings

  [ Tyler Cipriani ]
  * Fix doc generation
  * Update check documentation add restart_service
  * Use root context directory
  * Scap say
  * Consolidate scripts as subcommands of `scap`
  * Allow env_specific_paths to accept a glob
  * Add git_rev config var
  * Use subcommand for deploy-local
  * Rollback preserve done symlink

 -- Tyler Cipriani <tcipriani@wikimediawiki.org>  Tue, 03 May 2016 21:09:10 -0800

scap (3.1.0-1) unstable; urgency=low

  * Add --init flag for deploy
  * tox: run setup.py, add 'venv' to run any command
  * Add a note that checks can be used to run any kind of commands
  * check_valid_syntax filter out dir passed to php -l
  * Rewrite refreshCdbJsonFiles in python
  * Move restart_service to the end of promote
  * Remove user arguments from git operations
  * Move scap3 service restart to it's own stage
  * Support for git-fat managed binary files
  * Use absolute shebangs only when packaged

 -- Tyler Cipriani <tcipriani@wikimediawiki.org>  Thu, 24 Mar 2016 17:39:20 -0800

scap (3.0.3-1) unstable; urgency=low

  * Don't rebuild if cdb mtime is close to json mtime

 -- Tyler Cipriani <tcipriani@wikimediawiki.org>  Mon, 29 Feb 2016 15:03:18 -0800

scap (3.0.2-1) unstable; urgency=low

  * Bug Fix: Treat linked dirs as link target as normal file
  * Bug Fix: Only sudo when actually necessary for sudo_check_call

 -- Tyler Cipriani <tcipriani@wikimediawiki.org>  Mon, 22 Feb 2016 13:21:12 -0800

scap (3.0.1-1) unstable; urgency=low

  * Tagged 3.0.1-1 for release. (see 3.0.1 for changes since 3.0)

 -- Mukunda Modell <mmodell@wikimedia.org>  Mon, 15 Feb 2016 09:11:40 -0600

scap (3.0.1) unstable; urgency=low

  * Add /usr/bin/refreshCdbJsonFiles script that was overlooked in 3.0-1
  * Bug Fix: Socket has no fqdn method
  * Improvement: Canonicalize host names when excluding hosts

 -- Mukunda Modell <mmodell@wikimedia.org>  Mon, 15 Feb 2016 06:01:03 -0600

scap (3.0-1) unstable; urgency=low

  * Initial release

 -- Wikimedia Foundation Release Engineering <releng@wikimedia.org>  Thu, 12 Nov 2015 23:07:36 +0000
