Skip to content

Latest commit

 

History

History
267 lines (218 loc) · 29.9 KB

v0.24.md

File metadata and controls

267 lines (218 loc) · 29.9 KB

v0.24 🚀

This document contains all release notes pertaining to the v0.24.x releases of Vela.

For Vela Administrators

v0.25.1 (go-vela/ui component only)

This release addresses some some bugs causing increased API calls and a regression for builds utilizing larger amounts of resources.

  • (ui) fix: reduce excessive API calls #810 - thanks @wass3r & @plyr4
  • (ui) fix(resources): get all build resources #811 - thanks @plyr4

v0.24.2 (go-vela/server component only)

This release fixes several bugs, and enhances logging.

  • (server) fix(oidc): add expected fields #1156 - thanks @JordanSussman
  • (server) enhance(oidc): provide support for custom issuer #1160 - thanks @ecrupper
  • (server) enhance(token): add info logging on created private key, debug for minted ID token #1155 - thanks @ecrupper
  • (server) fix(webhook): use correct repo variable to populate client credentials #1162 - thanks @ecrupper
  • (server) fix(api): add ref to dashboard build partial #1161 - thanks @KellyMerrick

v0.24.1 (go-vela/server component only)

This release fixes a bug with queue routing and step status reporting for SCM.

  • (server) fix(queue): pop from inRoutes if supplied #1153 - thanks @ecrupper
  • (server) fix: use correct build links to steps for commit status updates #1150 - thanks @wass3r

v0.24.0

📣 Highlights

  • Dashboards
  • OIDC Support
  • Support for PR (Un)Labeled events
  • Platform Settings (for Platform Admins)

💥 Breaking Changes

NOTE: If you consume the Vela API, be aware that some endpoint response bodies are changing. See Endpoint Changes for details.

  • (server) feat!: Vela OIDC provider #1120 - thanks @ecrupper!
  • (server) feat!: db driven platform settings #1110 - thanks @plyr4!
  • (server) feat!: step status reporting + fix pull request context overwrite bug #1090 - thanks @ecrupper!
  • (server) feat(dashboards)!: server-side implementation of dashboards #1028 - thanks @ecrupper!
  • (server) feat(schedule)!: show schedule errors and nest object #1108 - thanks @wsan3!
  • (ui) feat(schedule)!: show schedule errors and nest object #795 - thanks @wsan3!
  • (server) refactor(build)!: move build from types and nest the object #1111 - thanks @ecrupper!
  • (server) refactor(repo)!: nested repository with migration from types #1095 - thanks @ecrupper!
  • (server) refactor(types)!: move worker type to server and nest API object #997 - thanks @ecrupper!
  • (server) refactor(user)!: migrate from types repo #1106 - thanks @ecrupper!

Admins

  • v0.24.x introduces a new dashboards and settings table that will be created automatically by default. However, if you are running the server component with the VELA_DATABASE_SKIP_CREATION set to true, you will need to manually create these tables.

Users

  • v0.24.x introduces a number of changes to API responses and a partial migration of github.com/go-vela/types to github.com/go-vela/server. If you depend on either, please update your references as needed. Reference the Breaking Changes section above for details.

✨ Features

  • (cli) feat: dashboards support #556 - thanks @ecrupper!
  • (cli) feat: db driven platform settings #554 - thanks @plyr4!
  • (sdk-go) feat(dashboards): support dashboards service in SDK #311 - thanks @ecrupper!
  • (sdk-go) feat: oidc provider #315 - thanks @plyr4!
  • (sdk-go) feat: platform settings #310 - thanks @plyr4!
  • (server) feat(db/log): use logrus as logger for db #1135 - thanks @wass3r!
  • (server) feat(rulesets): add support for PR labeled events #1081 - thanks @wsan3!
  • (types) feat(rulesets): add support for PR labeled events #361 - thanks @wsan3!
  • (types) feat: Vela OIDC Provider #375 - thanks @ecrupper!
  • (ui) feat(dashboard): render dashboard page and repo cards #796 - thanks @KellyMerrick!
  • (ui) feat(rulesets): add support for PR labeled events #778 - thanks @wsan3!
  • (ui) feat: admin page for workers and db driven platform settings #794 - thanks @plyr4!
  • (ui) feat: new logo #801 - thanks @wass3r!
  • (worker) feat: oidc provider #581 - thanks @plyr4!

🐛 Bug Fixes

  • (cli) fix(ci): remove deprecated linter rules #557 - thanks @ecrupper!
  • (cli) fix(ci): use intermediate env var for PR title #555 - thanks @ecrupper!
  • (cli) fix(lint): use proper formats field #566 - thanks @wass3r!
  • (cli) fix(pipeline): better handle non-action event inputs #567 - thanks @ecrupper!
  • (cli) fix(pipeline): clone image flag for compiler #561 - thanks @ecrupper!
  • (cli) fix: syntax highlighting #563 - thanks @plyr4!
  • (sdk-go) fix(ci): remove deprecated linter rules #313 - thanks @ecrupper!
  • (sdk-go) fix(ci): use intermediate env var for PR title #312 - thanks @ecrupper!
  • (sdk-go) fix(lint): use proper formats field #319 - thanks @wass3r!
  • (server) fix(api-spec): add missing 404 responses in docs #1124 - thanks @wass3rw3rk!
  • (server) fix(api/pipeline): correct type for path query param + add testing #1100 - thanks @ecrupper!
  • (server) fix(api/webhook): build approval for fork-no-write #1088 - thanks @jbrockopp!
  • (server) fix(ci): remove deprecated linter rules #1123 - thanks @ecrupper!
  • (server) fix(ci): use intermediate env var for PR title #1122 - thanks @ecrupper!
  • (server) fix(compiler): aggregate templates for nested pipelines #1125 - thanks @ecrupper!
  • (server) fix(dashboards): add active status on repo partial #1119 - thanks @ecrupper!
  • (server) fix(dashboards): add limit to repos for dashboards and dashboards for users #1116 - thanks @ecrupper!
  • (server) fix(dashboards): use v7 uuid for primary key #1115 - thanks @ecrupper!
  • (server) fix(deployments): set deployment created event action #1087 - thanks @plyr4!
  • (server) fix(events): add action to deployment check #1117 - thanks @ecrupper!
  • (server) fix(jwk): upgrade lestrrat-go/jwx to v2 #1138 - thanks @ecrupper!
  • (server) fix(mock): correct type for mock response #1121 - thanks @ecrupper!
  • (server) fix(repo): sanitize owner information #1109 - thanks @ecrupper!
  • (server) fix(scm): avoid usage of deprecated method in github module #1146 - thanks @wass3rw3rk!
  • (server) fix(scm): skipped map to failure for step status + remove deploy #1097 - thanks @ecrupper!
  • (server) fix(settings): missing fields in api conversion and func renames #1130 - thanks @plyr4!
  • (server) fix(settings): swagger missing 401 responses #1132 - thanks @plyr4!
  • (server) fix(swagger): various fixes and improved consistency #1139 - thanks @wass3r!
  • (server) fix(types): correct actions pkg for repo events #1103 - thanks @ecrupper!
  • (server) fix: logging #1145 - thanks @wass3rw3rk!
  • (server) fix: nil panic after CompileAndPublish #1105 - thanks @plyr4!
  • (server) fix: only convert commands query param when provided #1140 - thanks @plyr4!
  • (server) fix: platform settings yaml tags #1129 - thanks @plyr4!
  • (server) fix: remove sanitize but still crop fields #1113 - thanks @plyr4!
  • (server) fix: return code in CompileAndPublish rather than handleError #1107 - thanks @ecrupper!
  • (server) fix: swagger error and golangci-lint config #1142 - thanks @wass3r!
  • (server) fix: swagger typo #1092 - thanks @plyr4!
  • (types) fix(ci): remove deprecated linter rules #378 - thanks @ecrupper!
  • (types) fix(ci): use intermediate env variable for PR title validator #377 - thanks @ecrupper!
  • (types) fix(container): skip "label" rule evaluation in container execution #380 - thanks @wsan3!
  • (types) fix(deployments): check for deployment created event action #365 - thanks @plyr4!
  • (types) fix(lint): use proper formats field #381 - thanks @wass3r!
  • (types) fix: allow events yaml unmarshal #370 - thanks @plyr4!
  • (ui) fix(build): link to commit for schedule event #782 - thanks @plyr4!
  • (ui) fix(ci): use intermediate env var for PR title #798 - thanks @ecrupper!
  • (ui) fix(contextual help): correct docs link, add missing examples #803 - thanks @KellyMerrick!
  • (ui) fix(org): hide pagination when there are no org repos #786 - thanks @plyr4!
  • (ui) fix: reset favicon in nested layouts #788 - thanks @plyr4!
  • (ui) fix: restore favicon in Default layout, for all pages #805 - thanks @plyr4!
  • (ui) fix: restore favicon on dashboards page #804 - thanks @plyr4!
  • (ui) fix: reversed stage steps via sort #783 - thanks @plyr4!
  • (ui) fix: revert html code removal #799 - thanks @plyr4!
  • (ui) fix: set is_admin claim to optional #802 - thanks @plyr4!
  • (ui) fix: set repo.owner.admin to optional #792 - thanks @plyr4!
  • (worker) fix(ci): remove deprecated linter rules #578 - thanks @ecrupper!
  • (worker) fix(ci): use intermediate env var for PR title #577 - thanks @ecrupper!
  • (worker) fix(lint): use proper formats field #585 - thanks @wass3r!
  • (worker) fix: only add routes to registry worker if desired #583 - thanks @ecrupper!

🚸 Enhancements

  • (cli) enhance(pipeline): add ruledata flags for vela validate pipeline #547 - thanks @ecrupper!
  • (cli) enhance: syntax highlighting for json/yaml #558 - thanks @plyr4!
  • (sdk-go) enhance(pipeline): add ruledata options to various pipeline calls #301 - thanks @ecrupper!
  • (server) enhance(compiler): add ruledata option to CompileLite #1076 - thanks @ecrupper!
  • (server) enhance(log/ecs): log user to user designated field #1114 - thanks @wass3rw3rk!
  • (server) enhance(mock): add dashboard responses from server in mock #1118 - thanks @ecrupper!
  • (server) enhance(schedule): add next run field to schedule #1131 - thanks @wsan3!
  • (server) enhance(templates): inject template name as variable #1096 - thanks @ecrupper!
  • (server) enhance: add scm user id to build obj #1133 - thanks @plyr4!
  • (types) enhance: return err in NewEventsFromSlice #369 - thanks @plyr4!
  • (ui) enhance(repo-settings): display repository owner in UI #793 - thanks @ecrupper!
  • (ui) enhance(schedule): show next run for a schedule #800 - thanks @wsan3!
  • (ui) enhance: elm-land opinionated tweaks #779 - thanks @plyr4!
  • (ui) enhance: more consistent patterns generated by elm-land #781 - thanks @plyr4!
  • (ui) enhance: parity with elm-land #791 - thanks @wass3rw3rk!

♻️ Refactors

  • (cli) refactor(build): use server API types for build #552 - thanks @ecrupper!
  • (cli) refactor(repo): nested repository from server #549 - thanks @ecrupper!
  • (cli) refactor(schedule): use server API types for schedule #553 - thanks @wsan3!
  • (sdk-go) refactor(build): nested API + migration to server types #308 - thanks @ecrupper!
  • (sdk-go) refactor(repo): use nested repository type #302 - thanks @ecrupper!
  • (sdk-go) refactor(schedule): nested API + migration to server types #309 - thanks @wsan3!
  • (sdk-go) refactor(user): migrate from types #306 - thanks @ecrupper!
  • (sdk-go) refactor: nested api/worker #298 - thanks @plyr4!
  • (server) refactor: consistent import order #1077 - thanks @wass3r!
  • (server) refactor: create re-usable CompileAndPublish function #1063 - thanks @ecrupper!
  • (ui) refactor: elm rebuild #761 - thanks @plyr4!
  • (ui) refactor: nested api objects, repository #790 - thanks @plyr4!
  • (worker) refactor(build): update library build to API build and remove repo from executor #576 - thanks @ecrupper!
  • (worker) refactor: nested api/worker #567 - thanks @plyr4!
  • (worker) refactor: use nested repository type in worker code #571 - thanks @ecrupper!

🔧 Miscellaneous

  • (cli) chore: pin go version; import order; linter setup #548 - thanks @wass3rw3rk!
  • (sdk-go) chore(linter): remove goimports #305 - thanks @wass3rw3rk!
  • (sdk-go) chore(version): bump to v24 #316 - thanks @wass3rw3rk!
  • (sdk-go) chore: delete legacy allow event fields #300 - thanks @plyr4!
  • (sdk-go) chore: import order #304 - thanks @wass3rw3rk!
  • (server) chore(go): specific go version #1101 - thanks @wass3rw3rk!
  • (server) chore(linter): remove goimports #1104 - thanks @wass3rw3rk!
  • (server) chore: Correct the register worker token swagger path #1128 - thanks @tmapes!
  • (server) chore: remove legacy event code from repo and secret #1098 - thanks @ecrupper!
  • (server) chore: rename settings FromAPI constructor #1126 - thanks @plyr4!
  • (types) chore(linter): remove goimports #372 - thanks @wass3rw3rk!
  • (types) chore: delete legacy allow event fields and methods #362 - thanks @ecrupper!
  • (types) chore: pin go version; import order; linter setup #371 - thanks @wass3rw3rk!
  • (ui) chore(deps-dev): bump follow-redirects from 1.15.5 to 1.15.6 #777 - thanks @dependabot[bot]!
  • (ui) chore: remove allow_ fields from repo and events from secrets #787 - thanks @ecrupper!
  • (worker) chore: import order #572 - thanks @wass3rw3rk!
  • (worker) chore: upgrade server and fix tests #580 - thanks @ecrupper!
  • (cli) docs(validate): add ruleset example #569 - thanks @KellyMerrick!
  • (ui) docs: add comments to refactored ui #775 - thanks @KellyMerrick!

🔗 Release Links

💟 Thank you to all the contributors in this release!

  • @ecrupper
  • @jbrockopp
  • @JordanSussman
  • @KellyMerrick
  • @plyr4
  • @tmapes
  • @wass3r
  • @wass3rw3rk
  • @wsan3

Endpoint Changes

Endpoints with updated paths:

  • /api/v1/admin/workers/{worker}/register-token -> /api/v1/admin/workers/{worker}/register

Endpoints with modified response bodies:

Builds

In the response body, a Repo object, has replaced RepoID. Check out our api reference docs for an example.

  • GET /api/v1/repos/{org}/builds
  • GET /api/v1/repos/{org}/{repo}/builds
  • POST /api/v1/repos/{org}/{repo}/builds
  • GET /api/v1/repos/{org}/{repo}/builds/{build}
  • POST /api/v1/repos/{org}/{repo}/builds/{build}
  • PUT /api/v1/repos/{org}/{repo}/builds/{build}
  • DELETE /api/v1/repos/{org}/{repo}/builds/{build}/cancel
  • GET /api/v1/repos/{org}/{repo}/builds/{build}/executable
  • GET /api/v1/search/builds/{id}
  • GET /api/v1/admin/builds/queue
  • POST /webhook

Schedules

In the response body, a Repo object, has replaced RepoID. Check out our api reference docs for an example.

  • GET /api/v1/schedules/{org}/{repo}
  • POST /api/v1/schedules/{org}/{repo}
  • GET /api/v1/schedules/{org}/{repo}/{schedule}
  • PUT /api/v1/schedules/{org}/{repo}/{schedule}

Repos

In the response body, a User object, has replaced UserID. Check out our api reference docs for an example.

  • GET /api/v1/repos
  • POST /api/v1/repos
  • GET /api/v1/repos/{org}
  • GET /api/v1/repos/{org}/{repo}
  • PUT /api/v1/repos/{org}/{repo}
  • PATCH /api/v1/scm/orgs/{org}/sync
  • PATCH /api/v1/scm/repos/{org}/{repo}/sync
  • GET /api/v1/user/source/repos
  • PUT /api/v1/admin/repo