Releases: hashicorp/waypoint
v0.10.0
0.10.0 (September 13, 2022)
FEATURES:
- core: Custom Pipelines as a Tech Preview gives users the ability to define custom pipelines to run various Waypoint actions such as a build, deploy, release, up and more for deploying applications. Waypoint will monitor and log each pipeline run, associated jobs, and show the results of executing that pipeline. [GH-3777]
- core: Project Destroy Introduce a new CLI command
project destroy
to delete projects in Waypoint and destroy their associated resources [GH-3626] - CLI: New waypoint.hcl interactive generator, accessed with
waypoint init
when no waypoint.hcl exists in the current project [GH-3704]
IMPROVEMENTS:
- CLI: Nomad CSI volumes names can be specified during installation and upgrades for both Waypoint runners and Waypoint server installations [GH-3546]
- cli/runnerinstall: The runner profile created by
runner install
sets target labels
instead of a target runner ID on the runner profile, if the user supplied label flags [GH-3755] - cli: Add option to
waypoint logs
command to get a specific deployment's logs [GH-3656] - cli: Fix incorrect description for
destroy -h
command. [GH-3580] - cli: Implement
waypoint job get-stream
to allow users to attach to running job
streams and receieve output, or get the output from an existing job stream that
already finished. [GH-3410] - cli: Internal-only labels on runners are hidden from CLI output for
waypoint runner list
andwaypoint runner inspect
[GH-3746] - install/runner: Allow additional arguments for
waypoint runner agent
command
to be supplied towaypoint runner install
CLI [GH-3746] - internal/runnerinstall: Fix order of error checking and make error message more specific [GH-3772]
- plugin/k8s: Add ephemeral-storage resource limits to on-demand runners through runner profiles. [GH-3676]
- plugin/nomad: Implement WatchTask plugin for Nomad task launcher. Store Nomad on-demand runner logs in the job system. [GH-3797]
- plugin/nomad: nomad-jobspec deployments will no longer utilize the
nomad-jobspec-canary releaser by default. [GH-3359] - serverinstall/ecs: Improve server upgrade process by stopping task and reducing
target group drain time [GH-3564] - ui: Fix header spacing on build/release detail pages [GH-3614]
- ui: Make it clearer that remote runners are required for GitOps [GH-3615]
- ui: Update alert copy to reflect change that we are no longer removing project definitively in 0.10.0 [GH-3604]
BUG FIXES:
- cli/install/k8s: Fixes the k8s installer race condition with the bootstrap token [GH-3744]
- cli/runnerinstall: Fix output error message for missing arguments on Nomad runner installation [GH-3761]
- cli/runnerinstall: The runner profile created by
runner install
no longer sets
the profile as the default, and appends the runner ID to the name of the profile
for uniqueness [GH-3755] - cli/serverinstall/nomad: Add service discovery provider configuration
to server install for Nomad. [GH-3500] - cli: Do not set runner profile defaultness to false if default flag not specified. [GH-3702]
- cli: Fix issue where the CLI would exit with no error or action taken if a local
waypoint.hcl file was invalid [GH-3657] - cli: Fix order of CLI outputs during install [GH-3729]
- cli: Only show runner profile default deletion hint if more than 0 default
profiles are detected on upgrades. [GH-3688] - cli: Set plugin configuration on runner profile created during
runner install
[GH-3699] - cli: Set the subnet and security group ID configs for the ECS task launcher plugin
during an ECS runner install [GH-3701] - cli:
deployment destroy
will now attempt to destroy any known resources for failed
deployments. Previously,destroy
would skip unsuccessful deployments. [GH-3602] - cli:
runner profile delete
deletes by name rather than the user-invisible ID. [GH-3803] - cli:
runner profile set
does not create entries with duplicate names. [GH-3803] - core/runner: Default to odr oci image url for runner profiles created via runner install [GH-3800]
- core/runner: Server no longer panics when a runner stopped after it is forgotten. [GH-3756]
- core: prune releases which released deployments that are being pruned during
a release [GH-3730] - internal/pkg/gitdirty: Fix an issue detecting dirty local source code when using git@ remotes. [GH-3636]
- plugin/nomad-jobspec-canary: Retrieve the status of the correct Nomad job for the
job resource [GH-3766] - ui: Add label to “follow logs” button [GH-3732]
- ui: Make UI more resilient to invalid state JSON [GH-3786]
- upgrade: Nomad server upgrade upgrade now detects runners with the name
waypoint-runner
orwaypoint-static-runner
[GH-3804] - upgrade: Update ECS server upgrade to respect -ecs-server-image flag when the
existing server image is hashicorp/waypoint:latest [GH-3820]
v0.9.1
v0.9.0
0.9.0 (July 05, 2022)
FEATURES:
- Waypoint Task Tracking: Waypoint now tracks the lifecycle of on-demand
runner tasks through a new internal core conceptTask
. As ODR jobs run, Task
will keep track of what part the jobs are at for better debugging and on-demand
runner insight. [GH-3203] - cli: New
runner install
andrunner uninstall
commands to install/uninstall Waypoint runners to a specified platform [GH-3335] - cli: New
runner profile delete
command to delete a Waypoint runner profile [GH-3474] - cli: Refactor k8s server install to use Helm [GH-3335]
- core: Add ability to have cli and runners use OAuth2 to get an auth token [GH-3298]
- plugin/aws-ecr-pull: Introduces an
aws-ecr-pull
builder plugin
that enables using AWS ECR images that are built outside of Waypoint. [GH-3396] - plugin/lambda-function-url: Adds a new plugin and
releaser
component. This leverages Lambda URLs. [GH-3187]
IMPROVEMENTS:
- cli: Show list of existing default runner profiles on post-upgrade to warn user
that only one runner profile should be default. [GH-3497] - cli: Add interactive input for server upgrade, server uninstall, and destroy commands [GH-3238]
- cli: Remove unused flag
runner-profile
inwaypoint project apply
[GH-3318] - core/api: include commit message in datasource/git response [GH-3457]
- core: on-demand runner logs are now captured from the underlying platform
and stored in the job system. [GH-3306] - core: show helpful errors when using invalid runner profile plugin config [GH-3465]
- plugin/nomad: Support Nomad service discovery in Nomad platform plugin [GH-3461]
- runner: runners will now accept and execute multiple jobs concurrently
if multiple jobs are available. On-demand runners continue to execute exactly
one job since they are purpose launched for single job execution. [GH-3300] - server: Introduce basic server-side metric collections around operations [GH-3440]
- serverinstall/k8s: By default, do not set a mem or cpu limit or request for
the default runner profile installed. [GH-3475] - ui: Updated UI of breadcrumbs and UX to include current page [GH-3166]
- upgrade: Warn user if default k8s runner profile has incorrect plugin configs [GH-3503]
DEPRECATIONS:
-
config: More than one app stanza within a waypoint.hcl file is deprecated, and will be removed in 0.10. Please see https://discuss.hashicorp.com/t/deprecating-projects-or-how-i-learned-to-love-apps/40888 for more information.
Since the initial version of Waypoint, the product has supported the ability to configure multiple apps within a single waypoint.hcl file. This functionality is deprecated and will be removed in the next release. The vast majority of users are not using this functionality and it served mostly as a source of confusion for users. For users who are using a monorepo pattern, we plan to add better workflows for you.
With a waypoint.hcl now focused on the configuration of a single application, the concept of a project within the Waypoint data model will be removed, moving applications to the top level. This is already how users talk about using Waypoint and we are confident that it will improve the overall understanding of Waypoint as well.
If you have questions about this change in functionality, we invite you to discuss with us at https://discuss.hashicorp.com/t/deprecating-projects-or-how-i-learned-to-love-apps/40888 or https://github.com/hashicorp/waypoint/issues.
[GH-3466]
BUG FIXES:
- cli: fix git dirty check that was broken for some versions of the git cli [GH-3432]
- cli: fix panic when running status report on app with zero prior deployments [GH-3425]
- core: Fix a rare panic when generating an invite token. [GH-3505]
- plugin/docker: Ensure that the docker task launcher does not require a resources
block to be set when attempting to load a task config to launch a task. [GH-3486] - plugin/docker: fix issue with remote operations for
docker-pull
builder [GH-3398] - plugin/k8s: Properly parse kubernetes task launcher config on plugin invoke. [GH-3475]
- upgrade: Update existing runner profile during server upgrade & change naming convention of initial runner profile [GH-3490]
v0.8.2
0.8.2 (May 19, 2022)
IMPROVEMENTS:
- cli: Output message if no runners are found for 'runner list' [GH-3266]
- core: git cloning now supports recursively cloning submodules [GH-3351]
- plugin/aws-lambda: Add platform config validation. [GH-3193]
- plugin/aws-lambda: add support for lambda storage size [GH-3213]
- plugin/k8s: Add CPU and memory resource limits to on-demand runners through runner profiles and at install time. These resource limits follow the same format that kubernetes expects within
spec.containers[].resources
. [GH-3307] - plugin/lambda: Add
static_environment
to deploy plugin [GH-3282] - plugin/nomad-jobspec: Add configuration option to parse jobspec as HCL1 instead of HCL2 [GH-3287]
- plugin/nomad: Support Consul & Vault tokens for job submission [GH-3222]
BUG FIXES:
- builtin/k8s: Ensure pod.container.static_environment is applied [GH-3197]
- cli: Fix missing bootstrap hint with server run command [GH-3196]
- cli: Prevent panic when releasing unsuccessful deployments [GH-3207]
- cli: Show better error message when there are no Waypoint contexts when attempting
to open the UI [GH-3262] - install/nomad: Add support for CSI params & secrets to Nomad install [GH-3279]
- install/nomad: Fix DB directory for Nomad install [GH-3261]
- internal/cli: Fix
waypoint exec
workspace selection [GH-3226] - plugin/docker: support remote operations for docker-pull plugin [GH-3253]
- plugin/k8s: Ensure
container=docker
environment variable is set for Kaniko
to properly detect running inside a container, which prevented on-demand
runners from working on Kubernetes 1.23. [GH-3322] - server: fix issue cleaning up tasks in Kubernetes that completed successfully [GH-3299]
v0.8.1
v0.8.0
0.8.0 (April 07, 2022)
FEATURES:
- Targetable Runners with Labels: Waypoint now supports runner profiles that target specific on-demand runners by labels.
Projects and/or Apps can be configured to use a specific runner profile, identified by name.
The runner profile will target all operations to a specific on-demand runner by ID, or labels on the runner. [GH-3145] - cli: Introduce a new CLI command for job management and inspection
waypoint job
. [GH-3067] - core, cli: Support setting variables to
sensitive
and obfuscate those values in outputs [GH-3138] - plugin/nomad: Nomad jobspec canary promotion releaser [GH-2938]
IMPROVEMENTS:
- cli: Add
waypoint runner inspect
command [GH-3004] - cli: Add a way for
waypoint context create
to set the Waypoint server platform [GH-3055] - cli: Display count of instance connections in deployment status reports [GH-3043]
- cli: Introduce a
-dangerously-force
flag to attempt to force cancel a job [GH-3102] - cli: Print operation sequence ids and pushed artifact id [GH-3081]
- cli:
runner list
shows runner labels [GH-3133] - cli:
runner profile set
deprecates the-env-vars
flag in favor of the-env-var
flag instead. [GH-3136] - cli:
runner profile
command set now supports target runner labels [GH-3145] - core: runners automatically reconnect on startup if the server is unavailable
or becomes unavailable during the startup process [GH-3087] - core: runners can have labels, which are used for targeting and metadata [GH-2954]
- core: runners can tolerate a server outage during job execution and will
wait for the server to come back online [GH-3119] - plugin/aws-ecr: Output
architecture
from Docker image input [GH-3046] - plugin/ecs: Add
cpu_architecture
aws-ecs parameter
to support deploying Docker images built by the Apple M1 chip on ECS [GH-3068] - plugin/aws-lambda: Default lambda architecture to Docker/ECR image architecture [GH-3046]
- plugin/docker: Output
architecture
from Docker builder [GH-3046] - plugin/k8s: don't error if previous deployment is not found during cleanup [GH-3070]
- plugin/nomad: Resource manager for Nomad jobspec [GH-2938]
BUG FIXES:
- ceb: Fix connecting to servers with TLS verification [GH-3167]
- cli: Fix panic in
waypoint plugin
CLI [GH-3095] - cli: Fix panic when attempting to reinstall autocomplete [GH-2986]
- cli: Fix the -set-default flag on
waypoint context create
[GH-3044] - core: Ensure remote runners have dynamic config sources overrides for
evaluating defaults for job variables. [GH-3171] - core: Fix panic when running
waypoint build
remotely outside of project directory. [GH-3165] - core: Fix panic where on-demand runner config was nil before starting task [GH-3054]
- plugin/alb: Handle DuplicateListener errors from aws-alb releaser [GH-3035]
- plugin/aws-alb: Use Route53 zone id when destroying a resource record [GH-3076]
- plugin/docker: Add Docker auth support for builder and platform, and add config options for
docker-pull auth and registry auth [GH-2895] - plugin/k8s: clean up pending pods from cancelled jobs [GH-3143]
- plugin/k8s: fix issue when destroying multiple deployments [GH-3111]
- plugin/nomad: Fix Nomad job namespace when using ODRs [GH-2896]
- server: Fix project poll job singleton id to only include application on project
poll jobs if exist. Otherwise, only include the workspace and project. [GH-3158] - ui: Fix missing links to resources [GH-3172]
- ui: fix missing link on release detail page [GH-3142]
v0.7.2
0.7.2 (February 24, 2022)
FEATURES:
- Targetable Runners: Allow apps and projects to target specific runner profiles.
Allow runner profiles to target specific remote runners. [GH-2862] - Introduce executing Trigger URL configurations via HTTP. Users can
start a trigger via HTTP and stream the job event stream output directly over
http. [GH-2970]
IMPROVEMENTS:
- plugin/docker: Add parameter to disable the build cache [GH-2953]
BUG FIXES:
- cli: Fix panic on nil value for project [GH-2968]
- cli: Replace panic with message when attempting to
config get -app
without a-project
flag while outside a project directory [GH-3039] - cli: requires -app flag if
config set -scope=app
is set [GH-3040] - server: Cache Horizon hostname URL lookup when listing deployments in the
UI_ListDeployments bundle
. Now we look up the deployment URL once, and craft
the deployment URLs based on the original hostname lookup. [GH-2950] - ui: fixed issue with focus jumping back to the skip link on automatic refresh [GH-3019]
v0.7.1
0.7.1 (January 25, 2022)
IMPROVEMENTS:
- ui: Automatically select the appropriate workspace [GH-2835]
BUG FIXES:
v0.7.0
0.7.0 (January 13, 2022)
FEATURES:
- Source variable values from remote systems: The default value for input variables
can now use theconfigdynamic
function to source data from Vault, Consul,
Terraform Cloud, and more. This is a pluggable system. [GH-2889] - Workspace and Label-scoped Configuration: Build, registry, deploy, and
release configurations can now be changed depending on the current workspace
or label sets. This can be used to alter configurations between environments
(staging, production, etc.) or metadata (region, etc.). [GH-2699] - core: Introduce RunTriggers to Waypoint Server and CLI. Triggers can be configured
ahead of time to execute lifecycle operations on demand through the Waypoint API.
Currently, only the gRPC API is supported, but in the future an HTTP endpoint
will be added to be used within CI. [GH-2840] - ui/auth: users can now authenticate through the UI using an OIDC provider [GH-2688]
- ui: Add Exec Terminal to the web UI [GH-2849]
- ui: Added a tab with an overview of the resources provisioned by operations [GH-2777]
- ui: Added timeline component to artifact details pages [GH-2793]
- ui: Update UI of builds and releases tab [GH-2852]
- ui: add workspace switcher to app pages [GH-2674]
- ui: reformatted app overview page and header of artifact details page [GH-2606]
IMPROVEMENTS:
- cli: Add alias for -app and -workspace flags [GH-2700]
- cli: Add new
workspace create
command [GH-2797] - cli: Deprecate -remote flag for operations, replace with -local flag [GH-2771]
- cli: Enhance warning for project flag mismatches when project parsed from config [GH-2815]
- cli: Report where each operation runs (locally vs remotely) [GH-2795]
- cli: Warn if about to perform a remote operation with a dirty local git state [GH-2799]
- install/nomad: Ensure static runner has started during install by validating its
running status for a few seconds once it is in a "running" state. [GH-2698] - plugin/docker: inject
arm64
Waypoint entrypoints for arm images [GH-2692] - plugin/ecs: Implement the destruction of AWS resources created when deploying a workspace [GH-2684]
- plugin/pack: detect non-Intel Docker server and show a warning [GH-2692]
- serverinstall/ecs: Add permissions to the ECS runner IAM policy to allow the removal of security groups and de-registration of task [GH-2684]
- serverinstall: Set Nomad's ODR profile name to "nomad" [GH-2713]
- ui: Improved UX of screen readers' transition between pages [GH-2837]
- ui: Updated list items UI on deployments tab [GH-2879]
- ui: Updated the deployments tab UI/UX [GH-2773]
- ui: upgraded icons to flight icons library [GH-2681]
BREAKING CHANGES:
- core:
configdynamic
has been renamed todynamic
. The existing function
name continues to work but is deprecated and may be removed in a future version. [GH-2892] - plugin/docker:
img
-based Dockerless builds are no longer supported.
Dockerless builds are still fully supported via Kaniko and on-demand
runners that shipped in Waypoint 0.6. Static runners without access to
a Docker daemon can no longer build images. [GH-2534]
BUG FIXES:
- cli: Added check for empty deployUrl in output for release switch case [GH-2755]
- cli: Fix issue where users could not disable project polling from the CLI [GH-2673]
- core: fix issue where runners would fail but not shut down [GH-2571]
- ui: Fix edge case issue where users would not be redirected to the authentication screen if no api token was set [GH-2696]
- ui: Logs & Exec Terminals resize smoothly [GH-2890]
v0.6.3
0.6.3 (December 10, 2021)
SECURITY UPDATE:
- Update Go build version to 1.16.12 per Go security release