Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build(deps): bump github.com/hashicorp/consul/sdk from 0.7.0 to 0.8.0 in /api #23

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

dependabot[bot]
Copy link

@dependabot dependabot bot commented on behalf of github Sep 30, 2021

Bumps github.com/hashicorp/consul/sdk from 0.7.0 to 0.8.0.

Changelog

Sourced from github.com/hashicorp/consul/sdk's changelog.

0.8.0 (April 5, 2017)

BREAKING CHANGES:

  • Command-Line Interface RPC Deprecation: The RPC client interface has been removed. All CLI commands that used RPC and the -rpc-addr flag to communicate with Consul have been converted to use the HTTP API and the appropriate flags for it, and the rpc field has been removed from the port and address binding configs. You will need to remove these fields from your config files and update any scripts that passed a custom -rpc-addr to the following commands: force-leave, info, join, keyring, leave, members, monitor, reload

  • Version 8 ACLs Are Now Opt-Out: The acl_enforce_version_8 configuration now defaults to true to enable full version 8 ACL support by default. If you are upgrading an existing cluster with ACLs enabled, you will need to set this to false during the upgrade on both Consul agents and Consul servers. Version 8 ACLs were also changed so that acl_datacenter must be set on agents in order to enable the agent-side enforcement of ACLs. This makes for a smoother experience in clusters where ACLs aren't enabled at all, but where the agents would have to wait to contact a Consul server before learning that. [GH-2844]

  • Remote Exec Is Now Opt-In: The default for disable_remote_exec was changed to "true", so now operators need to opt-in to having agents support running commands remotely via consul exec. [GH-2854]

  • Raft Protocol Compatibility: When upgrading to Consul 0.8.0 from a version lower than 0.7.0, users will need to set the -raft-protocol option to 1 in order to maintain backwards compatibility with the old servers during the upgrade. See Upgrading Specific Versions guide for more details.

FEATURES:

  • Autopilot: A set of features has been added to allow for automatic operator-friendly management of Consul servers. For more information about Autopilot, see the Autopilot Guide.
    • Dead Server Cleanup: Dead servers will periodically be cleaned up and removed from the Raft peer set, to prevent them from interfering with the quorum size and leader elections.
    • Server Health Checking: An internal health check has been added to track the stability of servers. The thresholds of this health check are tunable as part of the Autopilot configuration and the status can be viewed through the /v1/operator/autopilot/health HTTP endpoint.
    • New Server Stabilization: When a new server is added to the cluster, there will be a waiting period where it must be healthy and stable for a certain amount of time before being promoted to a full, voting member. This threshold can be configured using the new server_stabilization_time setting.
    • Advanced Redundancy: (Consul Enterprise) A new -non-voting-server option flag has been added for Consul servers to configure a server that does not participate in the Raft quorum. This can be used to add read scalability to a cluster in cases where a high volume of reads to servers are needed, but non-voting servers can be lost without causing an outage. There's also a new redundancy_zone_tag configuration that allows Autopilot to manage separating servers into zones for redundancy. Only one server in each zone can be a voting member at one time. This helps when Consul servers are managed with automatic replacement with a system like a resource scheduler or auto-scaling group. Extra non-voting servers in each zone will be available as hot standbys (that help with read-scaling) that can be quickly promoted into service when the voting server in a zone fails.
    • Upgrade Orchestration: (Consul Enterprise) Autopilot will automatically orchestrate an upgrade strategy for Consul servers where it will initially add newer versions of Consul servers as non-voters, wait for a full set of newer versioned servers to be added, and then gradually swap into service as voters and swap out older versioned servers to non-voters. This allows operators to safely bring up new servers, wait for the upgrade to be complete, and then terminate the old servers.
  • Network Areas: (Consul Enterprise) A new capability has been added which allows operators to define network areas that join together two Consul datacenters. Unlike Consul's WAN feature, network areas use just the server RPC port for communication, and pairwise relationships can be made between arbitrary datacenters, so not all servers need to be fully connected. This allows for complex topologies among Consul datacenters like hub/spoke and more general trees. See the Network Areas Guide for more details.
  • WAN Soft Fail: Request routing between servers in the WAN is now more robust by treating Serf failures as advisory but not final. This means that if there are issues between some subset of the servers in the WAN, Consul will still be able to route RPC requests as long as RPCs are actually still working. Prior to WAN Soft Fail, any datacenters having connectivity problems on the WAN would mean that all DCs might potentially stop sending RPCs to those datacenters. [GH-2801]
  • WAN Join Flooding: A new routine was added that looks for Consul servers in the LAN and makes sure that they are joined into the WAN as well. This catches up up newly-added servers onto the WAN as soon as they join the LAN, keeping them in sync automatically. [GH-2801]
  • Validate command: To provide consistency across our products, the configtest command has been deprecated and replaced with the validate command (to match Nomad and Terraform). The configtest command will be removed in Consul 0.9. [GH-2732]

IMPROVEMENTS:

  • agent: Fixed a missing case where gossip would stop flowing to dead nodes for a short while. [GH-2722]
  • agent: Changed agent to seed Go's random number generator. [GH-2722]
  • agent: Serf snapshots no longer have the executable bit set on the file. [GH-2722]
  • agent: Consul is now built with Go 1.8. [GH-2752]
  • agent: Updated aws-sdk-go version (used for EC2 auto join) for Go 1.8 compatibility. [GH-2755]
  • agent: User-supplied node IDs are now normalized to lower-case. [GH-2798]
  • agent: Added checks to enforce uniqueness of agent node IDs at cluster join time and when registering with the catalog. [GH-2832]
  • cli: Standardized handling of CLI options for connecting to the Consul agent. This makes sure that the same set of flags and environment variables works in all CLI commands (see https://www.consul.io/docs/commands/index.html#environment-variables). [GH-2717]
  • cli: Updated go-cleanhttp library for better HTTP connection handling between CLI commands and the Consul agent (tunes reuse settings). [GH-2735]
  • cli: The operator raft subcommand has had its two modes split into the list-peers and remove-peer subcommands. The old flags for these will continue to work for backwards compatibility, but will be removed in Consul 0.9.
  • cli: Added an -id flag to the operator raft remove-peer command to allow removing a peer by ID. [GH-2847]
  • dns: Allows the .service tag to be optional in RFC 2782 lookups. [GH-2690]
  • server: Changed the internal EnsureRegistration RPC endpoint to prevent registering checks that aren't associated with the top-level node being registered. [GH-2846]

BUG FIXES:

  • agent: Fixed an issue with consul watch not working when http was listening on a unix socket. [GH-2385]
  • agent: Fixed an issue where checks and services could not sync deregister operations back to the catalog when version 8 ACL support is enabled. [GH-2818]
  • agent: Fixed an issue where agents could use the ACL token registered with a service when registering checks for the same service that were registered with a different ACL token. [GH-2829]
  • cli: Fixed consul kv commands not reading the CONSUL_HTTP_TOKEN environment variable. [GH-2566]
  • cli: Fixed an issue where prefixing an address with a protocol (such as 'http://' or 'https://') in -http-addr or CONSUL_HTTP_ADDR would give an error.
  • cli: Fixed an issue where error messages would get printed to stdout instead of stderr. [GH-2548]

... (truncated)

Commits
  • 402636f Release v0.8.0
  • 2394770 Puts the tree into release mode.
  • 59c6d48 Prefix autopilot log messages with 'autopilot'
  • c444ac3 Merge pull request #2872 from hashicorp/b-required-quorum
  • e6a2ef6 Use voter count instead of server count for required quorum
  • 8471360 Merge pull request #2865 from moofish32/doc/v8-compatibility
  • ef177a5 Update upgrade-specific.html.markdown
  • 7779c59 Link to new api
  • 9b8aefe Merge pull request #2871 from hashicorp/sethvargo/api
  • d87b613 Tabs v spaces
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [github.com/hashicorp/consul/sdk](https://github.com/hashicorp/consul) from 0.7.0 to 0.8.0.
- [Release notes](https://github.com/hashicorp/consul/releases)
- [Changelog](https://github.com/hashicorp/consul/blob/main/CHANGELOG.md)
- [Commits](hashicorp/consul@v0.7.0...v0.8.0)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/consul/sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file go Pull requests that update Go code labels Sep 30, 2021
@pull-request-quantifier-deprecated

This PR has 2 quantified lines of changes. In general, a change size of upto 200 lines is ideal for the best PR experience!


Quantification details

Label      : Extra Small
Size       : +1 -1
Percentile : 0.8%

Total files changed: 1

Change summary by file extension:
.mod : +1 -1

Change counts above are quantified counts, based on the PullRequestQuantifier customizations.

Why proper sizing of changes matters

Optimal pull request sizes drive a better predictable PR flow as they strike a
balance between between PR complexity and PR review overhead. PRs within the
optimal size (typical small, or medium sized PRs) mean:

  • Fast and predictable releases to production:
    • Optimal size changes are more likely to be reviewed faster with fewer
      iterations.
    • Similarity in low PR complexity drives similar review times.
  • Review quality is likely higher as complexity is lower:
    • Bugs are more likely to be detected.
    • Code inconsistencies are more likely to be detetcted.
  • Knowledge sharing is improved within the participants:
    • Small portions can be assimilated better.
  • Better engineering practices are exercised:
    • Solving big problems by dividing them in well contained, smaller problems.
    • Exercising separation of concerns within the code changes.

What can I do to optimize my changes

  • Use the PullRequestQuantifier to quantify your PR accurately
    • Create a context profile for your repo using the context generator
    • Exclude files that are not necessary to be reviewed or do not increase the review complexity. Example: Autogenerated code, docs, project IDE setting files, binaries, etc. Check out the Excluded section from your prquantifier.yaml context profile.
    • Understand your typical change complexity, drive towards the desired complexity by adjusting the label mapping in your prquantifier.yaml context profile.
    • Only use the labels that matter to you, see context specification to customize your prquantifier.yaml context profile.
  • Change your engineering behaviors
    • For PRs that fall outside of the desired spectrum, review the details and check if:
      • Your PR could be split in smaller, self-contained PRs instead
      • Your PR only solves one particular issue. (For example, don't refactor and code new features in the same PR).

How to interpret the change counts in git diff output

  • One line was added: +1 -0
  • One line was deleted: +0 -1
  • One line was modified: +1 -1 (git diff doesn't know about modified, it will
    interpret that line like one addition plus one deletion)
  • Change percentiles: Change characteristics (addition, deletion, modification)
    of this PR in relation to all other PRs within the repository.


Was this comment helpful? 👍  :ok_hand:  :thumbsdown: (Email)
Customize PullRequestQuantifier for this repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file Extra Small go Pull requests that update Go code
Projects
None yet
0 participants