Releases: uselagoon/lagoon
lagoon-core v2.15.4
Notes on this release
This release brings in a couple of backend changes - fixing an issue with broker queue accumulation under heavy load, and some additional logic for backup restores and advanced tasks. There is an additional query to filter disabled deployTargets if required.
This release is built on https://github.com/uselagoon/lagoon-images/releases/tag/23.7.0 images
What's Changed
- fix: nack messages that encounter error to resubmit by @shreddedbacon in #3489
- feat: support querying for disabled deploytargets by @shreddedbacon in #3488
- fix: use the right value for id in advancedtasks by @shreddedbacon in #3493
- fix: permission check for shared bucket flag by @shreddedbacon in #3495
Linked releases:
- lagoon-ui: https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.15.4
- lagoon-build-deploy: https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.15.4
- lagoon-core: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.36.0
- lagoon-test: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-test-0.50.0
Full Changelog: v2.15.3...v2.15.4
lagoon-core v2.15.3
Notes on this release
This release brings in a number of backend changes - a few code rewrites, tidyups and performance improvements. There are also fixes in place to allow the sharing of S3 buckets for backups, and better supporting cancelling tasks.
Additionally the test process has been updated to use Kubernetes 1.26 as a default, and the release process now creates multiarchitecture images, allowing lagoon-core to run on ARM-based processors (with the exception of the SSH service).
The version of Keycloak used for Lagoon has been upgraded to 17.0.1. In order to upgrade further than this, a rewrite of a number of elements in the lagoon keycloak initialisation will be required to support Quarkus.
This release is built on https://github.com/uselagoon/lagoon-images/releases/tag/23.7.0 images
What's Changed
- refactor: check if retries are required on some errors by @shreddedbacon in #3471
- feat: helper query to get a deployment by name by @shreddedbacon in #3483
- feat: API changes to support cancelling tasks by @timclifford in #3112
- feat: support shared bucket for backups by @shreddedbacon in #3481
- Update Helm/Kubernetes versions for testing to 1.26 by @tobybellwood in #3484
- Refactor: Refactored raw sql to Knex.js by @CGoodwin90 in #3447
- refactor: use deploytarget instead of kubernetes for message key by @shreddedbacon in #3361
- fix: use projectid in the addfactsbyname permission check by @shreddedbacon in #3486
- Build multiarchitecture Lagoon images & Update to Keycloak 17 by @tobybellwood in #3450
- fix: add the project directory to restore bucket path by @shreddedbacon in #3487
Linked releases:
- lagoon-ui: https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.15.3
- lagoon-build-deploy: https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.15.3
- lagoon-core: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.35.0
- lagoon-test: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-test-0.49.0
Full Changelog: v2.15.2...v2.15.3
lagoon-core v2.15.2
Notes on this release
This is a security release - addressing GHSA-75pm-pmwq-gg2c
This is also a patch release, fixing some minor bugs, and introducing some new queries
This release is built on the https://github.com/uselagoon/lagoon-images/releases/tag/23.6.0 images
What's Changed
- Use logic to shorten branch name for kind cluster creation in CI by @tobybellwood in #3472
- chore: shorten but retain buildnumber by @shreddedbacon in #3473
- Updated input validation to allow Azure Git Repositories to pass by @CGoodwin90 in #3466
- refactor: when creating a group, user should be added as owner by @shreddedbacon in #3463
- feat: add userBySshFingerprint resolver to retrive users by key fingerprint by @shreddedbacon in #3464
- fix: validate project key if it is changed, update default-user by @shreddedbacon in #3453
- refactor: when deleting a user, delete the users keys too by @shreddedbacon in #3462
- fix: delete linked ssh keys correctly by @tobybellwood in #3475
- feat: pass environment variables for project/environment to tasks too by @shreddedbacon in #3476
- feat: support defaultvalue and optional flag on adv task arguments by @shreddedbacon in #3478
Linked releases:
- lagoon-ui: https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.15.2
- lagoon-build-deploy: https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.15.2
- lagoon-core: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.34.0
- lagoon-test: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-test-0.48.0
Full Changelog: v2.15.1...v2.15.2
lagoon-core v2.15.1
Notes on this release
This is a patch release, fixing some minor bugs, and introducing no new features.
This release is built on the https://github.com/uselagoon/lagoon-images/releases/tag/23.5.0 images
What's Changed
- fix: only update deployment fields if they are provided by remote-controller by @shreddedbacon in #3449
- disable opensearch tests temporarily by @tobybellwood in #3454
- Typo fix by @AlannaBurke in #3441
- Enabled dark/light mode toggle for Lagoon Docs by @CGoodwin90 in #3451
- feat: add new resolver to retrieve the projects public key only by @shreddedbacon in #3455
- Stringify outgoing JSON for problems by @bomoko in #3456
- refactor: support the LAGOON_CONFIG_X variables in tasks by @shreddedbacon in #3457
- refactor: allow environments to be deleted if the deploytarget is disabled by @shreddedbacon in #3460
- migrate some tests to services by @tobybellwood in #3458
Linked releases:
- lagoon-ui: https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.15.1
- lagoon-build-deploy: https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.15.1
- lagoon-core: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.31.0
- lagoon-test: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-test-0.47.0
Full Changelog: v2.15.0...v2.15.1
lagoon-core v2.15.0
Notes on this release
This release is built using the https://github.com/uselagoon/lagoon-images/releases/tag/23.4.0 images
There are a number of small improvements in this release that will help to improve the ability to manage a Lagon instance:
- Two new queries -
allUsers
anduserByEmail
- to better manage users, and oneEnvironmentsByKubernetes
to better understand what workloads are running on which cluster - The ability to specify a particular build image to use on any given projects - better enabling issue diagnosis and test-ahead.
- Platform Owners now have the ability to use more previously admin-only queries, reducing the need for admin tokens
- A couple of updates to streamline the calling and operation of subscriptions in the UI
- quite a few tidyups in the operation of tasks and their related permissions.
- (and the related release of the UI contains a "dark mode" 🥳 )
What's Changed
- fix: actually collect the storagecalc field from project to send to remote by @shreddedbacon in #3434
- feat: support adding a buildimage to projects by @shreddedbacon in #3423
- Documentation Spring Cleaning by @AlannaBurke in #3432
- Update ARG documentation by @alexpott in #3438
- Fix error handling for duplicate projects during gitlab sync by @rocketeerbkw in #3436
- fix: logic on admin task visibility for advanced tasks by @shreddedbacon in #3439
- Fixes inter-resolver call from addFactsByName by @bomoko in #3433
- feat: allUsers and userByEmail queries by @shreddedbacon in #3435
- refactor: remove deleted projects from all groups by @shreddedbacon in #3442
- change: add and update additional admin permissions to platform-owner by @shreddedbacon in #3437
- fix: create the advanced task permission as it never existed by @shreddedbacon in #3443
- fix: check advanced task permission exists correctly by @shreddedbacon in #3446
- feat: Add
EnvironmentsByKubernetes
api query by @rocketeerbkw in #2686 - Consolidate api subscription events by @rocketeerbkw in #3445
- fix: permissions changes for subscriptions after keyloak optimisations by @shreddedbacon in #3448
- refactor: add empty attributes to new groups by @shreddedbacon in #3426
New Contributors
Linked releases:
- lagoon-ui: https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.15.0
- lagoon-build-deploy: https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.15.0
- lagoon-core: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.29.0
- lagoon-test: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-test-0.46.0
Full Changelog: v2.14.2...v2.15.0
lagoon-core v2.14.2
Notes on this release
This release fixes a bug found in the Keycloak optimizations under extreme load and re-enables the Redis functionality disabled in #3397 - this release should be used in place of v2.14.1
Please note, there was no lagoon-core 2.14.0 release, this is the second release in the 2.14 range. (2.14.0 was tag-only)
This release was built on https://github.com/uselagoon/lagoon-images/releases/tag/23.3.0 images
What's Changed
- refactor: add redis to the allgroups query to reduce load on keycloak by @shreddedbacon in #3428
- refactor: optimize keycloak interactions by @shreddedbacon in #3397
- feat: extend webhook notification with buildname, loglink, and routes by @shreddedbacon in #3412
- fix: groups in opensearch client token so that group-tenant association works by @shreddedbacon in #3414
- fix: filter out groups user isn't in when working out groups for user by @shreddedbacon in #3415
- Document
NEWRELIC_DISTRIBUTED_TRACING_ENABLED
environment variable by @rocketeerbkw in #3413 - Updating Lagoon maintainers. by @AlannaBurke in #3416
- Change: Update view permissions on Environment Variables by @CGoodwin90 in #3406
- fix: error on project creation if project already exists by @shreddedbacon in #3418
- chore: remove kind and apiversion from restore by @shreddedbacon in #3419
- Docs updates - spacing, lists, indents and install instructions by @tobybellwood in #3421
Linked releases:
- lagoon-ui: https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.14.2
- lagoon-build-deploy: https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.14.2
- lagoon-core: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.28.0
- lagoon-test: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-test-0.45.0
- lagoon-remote: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-remote-0.76.0
Full Changelog: v2.13.0...v2.14.2
[SUPERSEDED] lagoon-core v2.14.1
Notes on this release
You should use https://github.com/uselagoon/lagoon/releases/tag/v2.14.2 in place of this release. If you have already installed it, you should look to upgrade, however, the issue discovered is only present in extreme load scenarios.
Please note, there was no lagoon-core 2.14.0 release, this is the first release in the 2.14 range. (2.14.0 was tag-only)
Linked releases:
- lagoon-ui: https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.14.1
- lagoon-build-deploy: https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.14.1
- lagoon-core: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.26.0
- lagoon-test: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-test-0.44.0
- lagoon-remote: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-remote-0.76.0
Full Changelog: v2.13.0...v2.14.1
lagoon-core v2.13.0
What's Changed
- feature: support for disabling a deploytarget by @shreddedbacon in #3394
- Fix insecure registries running k3d/test on docker desktop for mac by @rocketeerbkw in #3399
- Docs update for cronjobs by @rocketeerbkw in #3395
- change: use knex instead of raw for envvars by @shreddedbacon in #3403
- change: task visibility improvements and changes to admin tasks by @shreddedbacon in #3393
- Deprecate
monitoringUrls
by @rocketeerbkw in #3390 - HSTS Updates by @rocketeerbkw in #3402
- Fix and Chore: error in custom task update and better input checks for creation by @bomoko in #3396
- Fixes numeric type in tasks by @bomoko in #3408
Linked releases:
lagoon-ui: https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.13.0
lagoon-build-deploy: https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.13.0
lagoon-charts:
lagoon-core: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.25.0
lagoon-test: https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-test-0.43.0
Full Changelog: v2.12.0...v2.13.0
lagoon-core v2.12.0
This release is built on the https://github.com/uselagoon/lagoon-images/releases/tag/23.1.0 images
There are a number of changes in here - a lot to documentation, improved testing, and local development workflow - we've done a lot of work on improving the documentation, modernizing, and consolidating tests.
We've also updated all Alpine-based images to 3.17, RabbitMQ to 3.10, and the MariaDB version used for the api-db and keycloak-db.
There are a number of improvements to the API - bug fixes, adding additional logic, and handling some new functionality in other services.
Errata and observed issues
The update to the MariaDB version has caused a change in the way that metadata fields are returned from the API. Data is now returned as structured JSON, instead of an escaped string:
Now returning
metadata": {
"key": "value"
},
instead of previously
"metadata": "{\"key\": \"value\"}",
Any customers using the returned metadata field programmatically should make suitable accommodations in their tooling.
Important: Ensure you have a local backup of the api-db and keycloak-db before you commence this update
The update of these databases from MariaDB 10.4 to 10.6 should update seamlessly. In the event it does not go smoothly, the image cannot be rolled back owing to incompatible storage engines. You will need to drop the db and restore the backup to get running again.
Associated releases
The lagoon-ui version released with this lagoon-core release is https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.12.0
The build-deploy-tool version released with this lagoon-core release is https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.12.0
The lagoon-charts version for this lagoon-cire release is https://github.com/uselagoon/lagoon-charts/releases/edit/lagoon-core-1.23.0
There are a number of other Lagoon-charts releases concurrent with this release, and they have made Kubernetes 1.21 the minimum supported version for Lagoon v.2.12.0 onwards.
What's Changed - Services
- Add facts by project and environment name by @timclifford in #3346
- fix: check for disabledDeployments in webhooks too by @shreddedbacon in #3356
- feature: add queued status type and build step field by @shreddedbacon in #3351
- fix: avoid empty items in lagoon-project attribute list by @smlx in #3358
- fix: support queued in deployments by filter by @shreddedbacon in #3373
- update broker to rabbitmq:3.10.6 by @tobybellwood in #3360
- better logging in keycloak js migration by @tobybellwood in #3370
- More security fixes to npm packages by @tobybellwood in #3378
- Update alpine docker images to 3.17 and sec vuls in npm-based test packages by @tobybellwood in #3384
- create new mappers for groups-and-roles by @tobybellwood in #3319
- update api and keycloak db vers to mariadb-10.6 by @tobybellwood in #3359
- Feature: Extend advanced tasks with admin functionality by @CGoodwin90 in #3382
- Fix gitlab sync when users have private email by @rocketeerbkw in #3388
What's Changed - Documentation, Testing and Local Development
- Post release documentation and config updates by @tobybellwood in #3345
- documentation: fixing issue with list on docker-compose-yml.md by @dasrecht in #3350
- Internal Services test by @CGoodwin90 in #3349
- update the drupal installs used to test Drush by @tobybellwood in #3357
- feat: add readiness sentinel file to api-data-watcher-pusher by @smlx in #3348
- update minio settings for dc up by @tobybellwood in #3364
- Adding documentation around service naming requirements by @CGoodwin90 in #3365
- fix: use correct details for ssh service in API data by @tobybellwood in #3368
- Updated tests to reflect additional service versions by @CGoodwin90 in #3366
- Update test suite to use ssh-token and ssh-portal instead of ssh by @smlx in #3355
- Minor updates to the test image by @tobybellwood in #3376
- Removing RocketChat reference by @AlannaBurke in #3372
- retrieve build pod name in tests from gql query by @tobybellwood in #3377
- Lagoon 2.12 documentation updates by @tobybellwood in #3363
- More security fixes to npm packages by @tobybellwood in #3378
- update tests to Kubernetes 1.24, run via k3d (instead of kind) by @tobybellwood in #3379
- Address sec vuls in npm-based test packages by @tobybellwood in #3384
- point to new helmfiles repo by @tobybellwood in #3389
- Lagoon v2.12.0 documentation updates by @tobybellwood in #3391
Full Changelog: v2.11.0...v2.12.0
lagoon-core v2.11.0
What's new
There are a couple of major changes hidden in this release:
- The controller-handler functionality has been integrated into the actions handler (one more service consolidated 🥳) - there will be no outwards facing changes because of this, just more streamlining
- The storage-calculator service in lagoon-core has been deprecated in favor of one located in lagoon-remote, to enable better control over when/where the storage runs are processed
- A new migrations capability has been introduced to Lagoon - we are using knex to handle our migrations in a separate service, allowing us more flexibility with the api-db in the future (watch this space)
- Migration of Keycloak startup scripts - note that this may take a few minutes to startup - this is normal, even if the liveness/startup probes fail - we're working on it - it has completed once the
Config of Keycloak done. Log in via admin user 'admin' and password
message comes up. - Added new
addOrUpdateEnvVariableByName
,getEnvVariablesByProjectEnvironmentName
anddeleteEnvVariableByName
resolvers to allow in-place updating of Lagoon variables. - We've updated the permissions in Lagoon to only allow administrators to rename projects, as the knock-on ramifications to other systems (logging, backups, monitoring) could be serious if a user renames a project themselves.
- A few assorted upgrades - RabbitMQ to 3.9, Alpine 3.16 in some images,
- Removing some of the log verbosity in the core services (and being able to control it with a variable)
- Tidy-ups to a few services to remove some errors, and build reporting/status inconsistencies.
- This release is built using https://github.com/uselagoon/lagoon-images/releases/tag/22.11.0
Lagoon Builds
This release also incorporates https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.11.0, which brings:
- Configurable support for deploying workloads on spot instances
- Support for buildkit features in builds (--target in docker-compose, and specifying DOCKER_BUILDKIT)
- Adding Opensearch as a lagoon.type
- A few other tidyups
Lagoon UI
This release also incorporates https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.11.0, which brings:
- Raw Logs display option button
- Ability to add plugins to the UI (eg the amazee.io supportBot)
Lagoon Charts
The chart releases to match the deprecated/consolidated/added services are in https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.16.0
What's Changed
- Add some clarity to persistent storage by @bryangruneberg in #3312
- Reduce logging noise and allow log level to be configured in Node.js services by @rocketeerbkw in #3164
- Fixes thinko in api error by @bomoko in #3314
- Fixes thinkos in lagoon remote installation docs by @bomoko in #3313
- fix: logs2notifications slack and email fixes by @shreddedbacon in #3305
- fix: add additional metadata to pullrequests triggered by the API by @shreddedbacon in #3310
- Stop using deprecated keycloak "upload scripts" for authorization policies by @rocketeerbkw in #3155
- API app logging improvements by @tobybellwood in #3315
- Feature: new environment variable resolvers by @shreddedbacon in #3204
- update Alpine to 3.16 and RabbitMQ to 3.9 by @tobybellwood in #3322
- set .erlang.cookie permission to 400 by @tobybellwood in #3326
- Feature: move controllerhandler functionality into actions-handler by @shreddedbacon in #3321
- chore: update machinery and add buildname check by @shreddedbacon in #3329
- improve bulk deploy test handling by @tobybellwood in #3330
- fix: remove lagoonadmin group by @smlx in #3283
- chore: remove storage-calculator by @shreddedbacon in #3317
- chore: support buildstatus and buildname in actions and logs2notifications by @shreddedbacon in #3331
- Feature/knex migration by @CGoodwin90 in #3318
- chore: support consuming deployer-token from service account by @shreddedbacon in #3325
- Add lagoon-opensearch-sync keycloak client by @smlx in #3289
- Various documentation updates by @tobybellwood in #3333
- fix: check status of build before updating it by @shreddedbacon in #3334
- fix: update actions-handler to fix deployment not found error by @shreddedbacon in #3338
- fix: some queries retrieve a deleted environment by @shreddedbacon in #3327
- Knex readme by @CGoodwin90 in #3337
- test: add working file restore to local development by @shreddedbacon in #3339
- Documentation: Remove unused stale TLS Cipher information by @dasrecht in #3340
- Updating docs with Community section. by @AlannaBurke in #3342
- Only allow administrators to rename projects by @shreddedbacon in #3343
- Adds input check for getUserBySshKey by @bomoko in #3341
- Run yarn-audit-fix by @tobybellwood in #3307
New Contributors
- @bryangruneberg made their first contribution in #3312
Full Changelog: v2.10.0...v2.11.0