Skip to content

Commit

Permalink
chore: merge main and fix conflicts
Browse files Browse the repository at this point in the history
  • Loading branch information
shreddedbacon committed Mar 27, 2024
2 parents 24f8905 + 1ef8e57 commit dd877cf
Show file tree
Hide file tree
Showing 115 changed files with 5,503 additions and 10,289 deletions.
38 changes: 38 additions & 0 deletions .github/workflows/test-mkdocs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Test mkdocs
on:
push:
branches:
- 'docs/**'
pull_request:
branches:
- 'main'
paths:
- 'docs/**'
- 'mkdocs.yml'
- '.github/workflows/test-mkdocs.yml'

jobs:
mkdocs:
runs-on: ubuntu-latest
steps:
-
name: Checkout PR
uses: actions/checkout@v4
with:
fetch-depth: 0
-
name: Install mkdocs and dependencies
run: |
pip install --upgrade pip
pip install mkdocs
pip install -r docs/requirements.txt
-
name: Check docs build ok in native mkdocs
run: |
mkdocs -V
mkdocs build -s
-
name: Check docs build ok with amazee.io mkdocs image
run: |
docker run --rm ghcr.io/amazeeio/mkdocs-material -V
docker run --rm -p 8000:8000 -v ${PWD}:/docs ghcr.io/amazeeio/mkdocs-material build -s
32 changes: 3 additions & 29 deletions DEPRECATIONS.md
Original file line number Diff line number Diff line change
@@ -1,33 +1,7 @@
# Lagoon Project Deprecation Announcements

## Overview
Deprecations will be tracked by the release they are announced in, and then updated when the actual deprecation occurs. All deprecations should provide a rough timeline (in months or releases).

This file is a constantly updated central tracker for deprecations across the suite of Lagoon products. As Lagoon continues to evolve, we occasionally need to replace, rename or retire existing processes, tools or configuration. Where this may impact a user's processes or procedures, we intend to outline a timeframe to allow any necessary changes to be made.
## Deprecation and Upgrades policy

Deprecations will be tracked by the release they are announced in, and then updated when the actual deprecation occurs. All deprecations should provide a rough timeline (in months or releases). Releases will normally only be listed here if they include planned deprecations.

## Deprecation History

All deprecations are listed below, with the most recent announcements at the top.

### Lagoon v2.18.0
release link: https://github.com/uselagoon/lagoon/releases/tag/v2.18.0
* The standard drupal based tasks that Lagoon ships with (drush ....) have been flagged as deprecated and should not be used anymore. These will need to be replaced with [custom tasks](https://docs.lagoon.sh/using-lagoon-advanced/custom-tasks/). Example replacement tasks will be provided prior to their removal.
* This release introduces a deprecation of the `setEnvironmentServices` mutation to updated services for an environment, it is being replaced with `addOrUpdateEnvironmentService` and `deleteEnvironmentService`. This is becaues the type is being refactored to support additional information, and eventually additional functionality. For now, the actions-handler service will still support the older `setEnvironmentServices` for backwards compatability for a short period to allow older versions of `lagoon-remote` to still work, but a new version of `lagoon-remote` will be available that will no longer provides the payload that the actions-handler uses.
* The value for `registry` which was previously required by the `lagoon-core` chart is no longer required. If you are using this, you will need to add it under the new `unauthenticatedRegistry` setting when installing `lagoon-remote` in the `lagoon-build-deploy` section of your values file. If you aren't using an actual registry and have the example `disabled-only-use-harbor-via-deploy-controller.invalid` value, then you do not need to do anything except you can now remove the `registry` setting from your core values file.
* The environment storage return field named `bytesUsed` is deprecated. The actual value stored is `kibibytes`. A new return field called `kibUsed` exists and should be used, the returned data is the same and both fields are still returned. `bytesUsed` will be removed in a future release, make any adjustments now to use `kibUsed`. This will be a breaking change in a future release.
* `addOrUpdateEnvironmentStorage` is deprecated, `addOrUpdateStorageOnEnvironment` is the replacement to use as it supports the updated input value for `kibUsed`. `addOrUpdateEnvironmentStorage` will be completely removed in a future release.
* When a backup is deleted via the webhook, it will now actually removed from the API rather than being flagged as deleted. The `Backup` type field `deleted` is deprecated, and will be removed in a future release. Additionally, `includeDeleted` if requested when querying backups will not change the result as there will be no deleted backups to include.

### Lagoon v2.17.0

release link: https://github.com/uselagoon/lagoon/releases/tag/v2.17.0
* This release introduces a new active/standby task image that does not require the use of the [dioscuri controller](https://github.com/amazeeio/dioscuri). Dioscuri is deprecated and will eventually be removed from the `lagoon-remote` helm chart. If you use active/standby functionality in your clusters, you should upgrade to lagoon v2.17.0 and update your remote clusters to the version of the `lagoon-remote` helm chart the v2.17.0 release says to use (see release notes for v2.17.0)
* Support for Harbor in the API will be removed in a future release. If you currently have your core installation with Harbor support, you should move to using the integration within lagoon-remote instead. See the documentation [here](https://docs.lagoon.sh/installing-lagoon/install-lagoon-remote) and read the section about Harbor.
* Support for Harbor 2.1.x (chart version 1.5.x) and older in `lagoon-remote` will be removed in a future release. You should consider upgrading Harbor to a newer version (currently Lagoon supports up to v2.9.x (chart version 1.13.x)), following any recommended upgrade paths from Harbor.

### Lagoon v2.16.0

release link: https://github.com/uselagoon/lagoon/releases/tag/v2.16.0

There were no planned deprecations announced in this release.
See https://docs.lagoon.sh/releases/policy
63 changes: 62 additions & 1 deletion Jenkinsfile
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
def skipRemainingStages = false

pipeline {
agent { label 'lagoon' }
environment {
Expand All @@ -20,6 +22,20 @@ pipeline {
sh 'env'
}
}
stage ('skip on docs commit') {
when {
anyOf {
changeRequest branch: 'docs\\/.*', comparator: 'REGEXP'
branch pattern: "docs\\/.*", comparator: "REGEXP"
}
}
steps {
script {
skipRemainingStages = true
echo "Docs only update, no build needed."
}
}
}
// in order to have the newest images from upstream (with all the security
// updates) we clean our local docker cache on tag deployments
// we don't do this all the time to still profit from image layer caching
Expand All @@ -28,12 +44,20 @@ pipeline {
stage ('clean docker image cache') {
when {
buildingTag()
expression {
!skipRemainingStages
}
}
steps {
sh script: "docker image prune -af", label: "Pruning images"
}
}
stage ('build and push images') {
when {
expression {
!skipRemainingStages
}
}
environment {
PASSWORD = credentials('amazeeiojenkins-dockerhub-password')
}
Expand All @@ -46,11 +70,21 @@ pipeline {
}
}
stage ('show trivy scan results') {
when {
expression {
!skipRemainingStages
}
}
steps {
sh script: "cat scan.txt", label: "Display scan results"
}
}
stage ('setup test cluster') {
when {
expression {
!skipRemainingStages
}
}
parallel {
stage ('0: setup test cluster') {
steps {
Expand All @@ -72,6 +106,11 @@ pipeline {
}
}
stage ('run first test suite') {
when {
expression {
!skipRemainingStages
}
}
parallel {
stage ('1: run first test suite') {
steps {
Expand Down Expand Up @@ -106,6 +145,11 @@ pipeline {
}
}
stage ('run second test suite') {
when {
expression {
!skipRemainingStages
}
}
parallel {
stage ('2: run second test suite') {
steps {
Expand All @@ -126,6 +170,11 @@ pipeline {
}
}
stage ('run third test suite') {
when {
expression {
!skipRemainingStages
}
}
parallel {
stage ('3: run third test suite') {
steps {
Expand All @@ -146,11 +195,14 @@ pipeline {
}
}
stage ('push images to testlagoon/* with :latest tag') {
when {
when {
branch 'main'
not {
environment name: 'SKIP_IMAGE_PUBLISH', value: 'true'
}
expression {
!skipRemainingStages
}
}
environment {
PASSWORD = credentials('amazeeiojenkins-dockerhub-password')
Expand All @@ -166,6 +218,9 @@ pipeline {
not {
environment name: 'SKIP_IMAGE_PUBLISH', value: 'true'
}
expression {
!skipRemainingStages
}
}
environment {
TOKEN = credentials('git-amazeeio-helmfile-ci-trigger')
Expand All @@ -180,6 +235,9 @@ pipeline {
not {
environment name: 'SKIP_IMAGE_PUBLISH', value: 'true'
}
expression {
!skipRemainingStages
}
}
environment {
PASSWORD = credentials('amazeeiojenkins-dockerhub-password')
Expand All @@ -195,6 +253,9 @@ pipeline {
branch 'testing/scans'
buildingTag()
}
expression {
!skipRemainingStages
}
}
steps {
sh script: 'make scan-images', label: "perform scan routines"
Expand Down
9 changes: 9 additions & 0 deletions UPGRADES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Lagoon Project Upgrades

Whenever there is important information around versions of Lagoon that may impact the ability to upgrade to a new version, there will be upgrade information notes provided.

You should always read all version release notes, upgrade notes, and deprecation notices for all versions you upgrade to.

## Upgrades and Deprecation policy

See https://docs.lagoon.sh/releases/policy
2 changes: 0 additions & 2 deletions docs/interacting/create-project.gql
Original file line number Diff line number Diff line change
Expand Up @@ -50,8 +50,6 @@ mutation {
id
}
gitUrl
activeSystemsDeploy
activeSystemsRemove
branches
pullrequests
}
Expand Down
2 changes: 0 additions & 2 deletions docs/interacting/graphql-queries.md
Original file line number Diff line number Diff line change
Expand Up @@ -298,8 +298,6 @@ mutation {
id
}
gitUrl
activeSystemsDeploy
activeSystemsRemove
branches
pullrequests
}
Expand Down
26 changes: 26 additions & 0 deletions docs/other-tools/client-libraries.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Lagoon client libraries

If you're interested in developing tooling for the Lagoon ecosystem, there are a few libraries that you may find helpful.

## Golang
### Machinery

The Machinery library is the most actively supported and developed of the tooling libraries for Lagoon.
It is a central store of all the basic operations used across all our golang based tool types, primarily -- but not exclusively -- for API interaction.

[https://github.com/uselagoon/machinery/](https://github.com/uselagoon/machinery/)


## PHP

If you're looking for PHP integration, the php-sdk may give you a good jumping off point for your work.

[https://github.com/uselagoon/lagoon-php-sdk](https://github.com/uselagoon/lagoon-php-sdk)

# Third Party Libraries

## Ansible

A frequently updated and expanding Ansible library for interacting with Lagoon.

[https://github.com/salsadigitalauorg/lagoon_ansible_collection](https://github.com/salsadigitalauorg/lagoon_ansible_collection)
5 changes: 5 additions & 0 deletions docs/releases/.pages
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
title: Releases
order: desc
nav:
- Policy: policy.md
- ...
14 changes: 14 additions & 0 deletions docs/releases/2.10.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#### Release Links
* lagoon [v2.10.0](https://github.com/uselagoon/lagoon/releases/tag/v2.10.0)
* lagoon-ui [core-v2.10.0](https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.10.0)
* lagoon-build-deploy [core-v2.10.0](https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.10.0)
* lagoon-core chart [1.12.0](https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.12.0)

## Upgrades

### Upgrade to v2.9.x first
You *must* upgrade to Lagoon v2.9.x before upgrading to v2.10.0. Ensure you read all the linked release notes.

## Deprecations

There are no required actions or considerations with this release
18 changes: 18 additions & 0 deletions docs/releases/2.11.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#### Release Links
* lagoon [v2.11.0](https://github.com/uselagoon/lagoon/releases/tag/v2.11.0)
* lagoon-ui [core-v2.11.0](https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.11.0)
* lagoon-build-deploy [core-v2.11.0](https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.11.0)
* lagoon-core chart [1.16.0](https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.16.0)

## Upgrades

### Upgrade to v2.10.x first
You *must* upgrade to Lagoon v2.10.x before upgrading to v2.11.0. Ensure you read all the linked [release notes](./2.10.0.md#release-links).

### Essential database backups
Ensure you have a local backup of the api-db and keycloak-db before you commence this update, as there are complex migrations taking place in preparation for the v2.12.0 release.

## Deprecations

### Storage Calculator removed from core
The storage-calculator service was removed from core in this release, and the service is now included in lagoon-remote.
17 changes: 17 additions & 0 deletions docs/releases/2.12.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
#### Release Links
* lagoon [v2.12.0](https://github.com/uselagoon/lagoon/releases/tag/v2.12.0)
* lagoon-ui [core-v2.12.0](https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.12.0)
* lagoon-build-deploy [core-v2.12.0](https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.12.0)
* lagoon-core chart [1.23.0](https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.23.0)

## Upgrades

### Essential database backups
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.

### Kubernetes 1.21 minimum requirement
The minimum supported version of Kubernetes is 1.21 as of this release.

## Deprecations

There are no required actions or considerations with this release
14 changes: 14 additions & 0 deletions docs/releases/2.13.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#### Release Links
* lagoon [v2.13.0](https://github.com/uselagoon/lagoon/releases/tag/v2.13.0)
* lagoon-ui [core-v2.13.0](https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.13.0)
* lagoon-build-deploy [core-v2.13.0](https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.13.0)
* lagoon-core chart [1.25.0](https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.25.0)

## Upgrades

There are no required actions or considerations with this release. As always, we suggest upgrading all minor versions.

## Deprecations

### monitoring-urls
The storage and use of monitoring-urls provided in lagoon.yml has been removed from the API.
7 changes: 7 additions & 0 deletions docs/releases/2.14.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
## Upgrades

This tag was never released, and the [2.14.2](./2.14.2.md) release should be installed instead.

## Deprecations

This tag was never released, and the [2.14.2](./2.14.2.md) release should be installed instead.
14 changes: 14 additions & 0 deletions docs/releases/2.14.1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#### Release Links
* lagoon [v2.14.2](https://github.com/uselagoon/lagoon/releases/tag/v2.14.2)
* lagoon-ui [core-v2.14.2](https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.14.2)
* lagoon-build-deploy [core-v2.14.2](https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.14.2)
* lagoon-core chart [1.28.0](https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.28.0)
* lagoon-remote chart [0.76.0](https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-remote-0.76.0)

## Upgrades

This release was superseded, and the [2.14.2](./2.14.2.md) release is recommended to be installed instead.

## Deprecations

This release was superseded, and the [2.14.2](./2.14.2.md) release is recommended to be installed instead.
14 changes: 14 additions & 0 deletions docs/releases/2.14.2.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#### Release Links
* lagoon [v2.14.2](https://github.com/uselagoon/lagoon/releases/tag/v2.14.2)
* lagoon-ui [core-v2.14.2](https://github.com/uselagoon/lagoon-ui/releases/tag/core-v2.14.2)
* lagoon-build-deploy [core-v2.14.2](https://github.com/uselagoon/build-deploy-tool/releases/tag/core-v2.14.2)
* lagoon-core chart [1.28.0](https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-core-1.28.0)
* lagoon-remote chart [0.76.0](https://github.com/uselagoon/lagoon-charts/releases/tag/lagoon-remote-0.76.0)

## Upgrades

There are no required actions or considerations with this release. As always, we suggest upgrading all minor versions.

## Deprecations

There are no required actions or considerations with this release
Loading

0 comments on commit dd877cf

Please sign in to comment.