Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
139 commits
Select commit Hold shift + click to select a range
a483962
license download and storage
cloudnativetoolkit Aug 8, 2023
6e10dbf
pipeline test
cloudnativetoolkit Aug 12, 2023
d3878f6
updates to pipeline
cloudnativetoolkit Aug 12, 2023
330ac0c
Merge pull request #1 from cloud-native-toolkit/feat/mascli
davidstacy Aug 12, 2023
085d295
fix param not existent
cloudnativetoolkit Aug 13, 2023
b37b4b7
fix param name
cloudnativetoolkit Aug 14, 2023
ec218c1
updates to pipline
cloudnativetoolkit Aug 18, 2023
a5522e7
add retries on install-mas
cloudnativetoolkit Aug 19, 2023
79e3da2
update to add certs
cloudnativetoolkit Aug 20, 2023
53dc006
add 8.11 pipeline and changes for 8.10
cloudnativetoolkit Sep 28, 2023
6bc1c5b
updates to use mas-devops
cloudnativetoolkit Oct 3, 2023
16990fc
updates to use mas-devops
cloudnativetoolkit Oct 4, 2023
0f6c2a4
add cp4d and maximo manage
cloudnativetoolkit Oct 5, 2023
c927500
Merge pull request #2 from cloud-native-toolkit/dls-manage
davidstacy Oct 5, 2023
ca1b6ad
add timeouts
cloudnativetoolkit Oct 5, 2023
d448f78
Merge pull request #3 from cloud-native-toolkit/dls-manage
davidstacy Oct 5, 2023
c109cdf
remove params from pipeline run and add cert app directories
cloudnativetoolkit Oct 6, 2023
3f7de20
reset for debugging
cloudnativetoolkit Oct 6, 2023
e794fb3
remove spaces from workspace
cloudnativetoolkit Oct 11, 2023
2df3fe3
updates to manage install
cloudnativetoolkit Oct 11, 2023
9218a5f
simplify pipeline
cloudnativetoolkit Oct 12, 2023
c036c32
shorten instance name
cloudnativetoolkit Oct 12, 2023
c686117
back to standard name
cloudnativetoolkit Oct 13, 2023
0e7bae1
fixes for installing manage, and param for demo data
cloudnativetoolkit Oct 15, 2023
52e0b6b
increase timeouts
cloudnativetoolkit Oct 16, 2023
7eac4b5
update with troubleshooting info
cloudnativetoolkit Oct 17, 2023
b53734f
add db2u cpu and memory resource upgrades
cloudnativetoolkit Oct 18, 2023
66f7fbd
add demo data and 8.7 manage
cloudnativetoolkit Oct 20, 2023
1c746f0
Update pipeline.yaml
davidstacy Oct 20, 2023
a049072
update timeouts
cloudnativetoolkit Nov 14, 2023
ffeba1f
readme update
cloudnativetoolkit Nov 15, 2023
3763b18
Update pipeline.yaml to lock version 7.9.0
davidstacy Dec 11, 2023
4b77660
update license
davidstacy Jan 16, 2024
8b57b3a
Merge pull request #4 from cloud-native-toolkit/dls-updatelicense
davidstacy Jan 16, 2024
2cde2c0
update versions
davidstacy Jan 31, 2024
e79d26b
Merge pull request #5 from cloud-native-toolkit/dls-updateversion
davidstacy Jan 31, 2024
1d0c401
switch back to workspace
davidstacy Feb 1, 2024
647bef0
Merge pull request #6 from cloud-native-toolkit/dls-updateversion
davidstacy Feb 1, 2024
1a34b0b
add monitor and iot tasks
Mar 31, 2024
35a2120
Merge pull request #7 from cloud-native-toolkit/dls-add-monitor-iot
davidstacy Mar 31, 2024
f3bfef7
switch to v1
Apr 2, 2024
289aa9b
Merge pull request #8 from cloud-native-toolkit/dls-add-monitor-iot
davidstacy Apr 2, 2024
f4e5caf
updates to 8.2.1 of cli
May 2, 2024
30578d4
Merge pull request #9 from cloud-native-toolkit/dls-add-monitor-iot
davidstacy May 2, 2024
ba2d78b
update deploy.sh
davidstacyibm May 3, 2024
e21f38e
Merge pull request #10 from cloud-native-toolkit/dls-add-monitor-iot
davidstacy May 3, 2024
8aff797
mas9
davidstacyibm Jun 30, 2024
f7f60f7
Merge pull request #11 from cloud-native-toolkit/dls-mas9
davidstacyibm Jun 30, 2024
4f6d845
add pielinerun
davidstacyibm Jul 2, 2024
16854d6
add mas-channel to manage task
davidstacyibm Jul 2, 2024
0d40190
additional tasks
davidstacyibm Jul 2, 2024
dba7f45
Merge pull request #12 from cloud-native-toolkit/dls-mas9
davidstacyibm Jul 2, 2024
a7aeba6
add iot/monitor pipelinerun
davidstacyibm Jul 5, 2024
0ef7075
update cli image to 10.0.5
davidstacyibm Jul 5, 2024
cb4ab4e
add params for monitor and iot install
davidstacyibm Jul 5, 2024
f3113fd
update to latest cli
davidstacyibm Jul 24, 2024
1a2f5c0
Merge pull request #14 from cloud-native-toolkit/dls-070524-updates
davidstacyibm Jul 24, 2024
8ba344a
go back to latest and not use tagged versions
davidstacyibm Aug 16, 2024
1867a35
update
Aug 22, 2024
b713fac
update
Aug 22, 2024
dd7d271
update
Aug 23, 2024
7252555
update
Aug 23, 2024
4571cbb
update
Aug 24, 2024
760ad1d
update
Aug 27, 2024
055b59d
update
Aug 27, 2024
97d6358
update
Aug 28, 2024
23e1847
update
Sep 13, 2024
3fa382a
update
Sep 13, 2024
a4a9090
Merge pull request #15 from zxue/main
davidstacyibm Sep 13, 2024
f9b452b
update
Sep 27, 2024
14d34fc
fix pipeline for storageclasses and readwriteonce
davidstacyibm Oct 8, 2024
2b881ab
Merge pull request #16 from cloud-native-toolkit/dls-ocpv-prep
davidstacyibm Oct 8, 2024
f5423f6
update
Oct 9, 2024
4569079
Merge pull request #17 from zxue/main
davidstacyibm Oct 9, 2024
ebac8cb
Update mas-deploy-pipeline-run.yml
davidstacyibm Oct 9, 2024
c7b8f44
add mvi
Nov 12, 2024
103c32e
Merge pull request #18 from zxue/main
davidstacyibm Nov 14, 2024
9bce27e
update
Nov 14, 2024
1e8338b
Merge pull request #19 from zxue/main
davidstacyibm Dec 3, 2024
34c49a2
initial rename for new pipeline
davidstacyibm Dec 3, 2024
c442e02
add archives
davidstacyibm Dec 3, 2024
699dfb6
add sample params
davidstacyibm Dec 3, 2024
f0f44fa
fix conflict
davidstacyibm Dec 3, 2024
372968d
Merge pull request #20 from cloud-native-toolkit/dls-pipeline-v2
davidstacyibm Dec 3, 2024
bcf67ea
initial params potentially needed for cp4d manage
davidstacyibm Dec 3, 2024
f3cf29b
add params for manage and iot,health
davidstacyibm Dec 3, 2024
c2e891a
Merge pull request #21 from cloud-native-toolkit/dls-pipeline-v2
davidstacyibm Dec 3, 2024
c74b22b
reference correct pipeline name
davidstacyibm Dec 3, 2024
2906e3f
Merge pull request #22 from cloud-native-toolkit/dls-pipeline-v2
davidstacyibm Dec 3, 2024
2df4667
fixes to leverage ocp-v certs
davidstacyibm Dec 4, 2024
ff6fe4a
update params to use non wildcards
davidstacyibm Dec 6, 2024
fffac99
fixup to use right certs for OCPv
davidstacyibm Dec 6, 2024
b044f26
Merge pull request #23 from cloud-native-toolkit/dls-pipeline-v2
davidstacyibm Dec 6, 2024
8c144a6
update catalog
davidstacyibm Dec 7, 2024
2b274f5
pin version to ansible-devops 23.5.2
davidstacyibm Dec 9, 2024
2c2bc2d
fix version
davidstacyibm Dec 9, 2024
eabe8a3
update back to latest
davidstacyibm Dec 12, 2024
07541de
update catalog version
davidstacyibm Dec 12, 2024
e78a989
Merge pull request #24 from cloud-native-toolkit/dls-pipeline-v2
davidstacyibm Dec 12, 2024
6492436
run cp4d after core installation
davidstacyibm Dec 13, 2024
013b28a
Merge pull request #26 from cloud-native-toolkit/dls-reorder-cp4d
davidstacyibm Dec 13, 2024
ec5bedc
add container registry check and patch for OCPv
davidstacyibm Dec 19, 2024
6ece3fe
fix typo in oc command - use right cap
davidstacyibm Dec 19, 2024
e923203
Add wile loop to wait for readiness
davidstacyibm Dec 19, 2024
b400b25
Merge pull request #27 from cloud-native-toolkit/dls-reorder-cp4d
davidstacyibm Dec 19, 2024
bc0172e
add fix for task to use ibm-pak; specify the right cluster to check f…
davidstacyibm Dec 20, 2024
777347c
use same command for both status updates
davidstacyibm Dec 20, 2024
4926744
Merge pull request #28 from cloud-native-toolkit/dls-fix-task
davidstacyibm Dec 20, 2024
67b574a
update maximo license file for 2026
davidstacyibm Jan 14, 2025
8646a6f
Merge pull request #29 from cloud-native-toolkit/dls-update-maxlic
davidstacyibm Jan 14, 2025
29e5c21
update key id for license file
davidstacyibm Jan 14, 2025
b440da6
Merge pull request #30 from cloud-native-toolkit/dls-update-maxlic
davidstacyibm Jan 14, 2025
6b969e5
update key id to new license file
davidstacyibm Feb 13, 2025
134230f
Merge pull request #31 from cloud-native-toolkit/dls-fix811
davidstacyibm Feb 13, 2025
f512198
add proposed params for URL and certificate simplification and to add…
davidstacyibm Mar 7, 2025
eff751c
updates to certs and SAN
davidstacyibm Mar 21, 2025
e0bba7b
Merge pull request #34 from cloud-native-toolkit/dls-cert-update
davidstacy Mar 21, 2025
a105e12
add routes for admin and auth
davidstacyibm Mar 21, 2025
1c407c8
Merge pull request #35 from cloud-native-toolkit/dls-cert-update
davidstacyibm Mar 21, 2025
d2d13d1
add optimizer:
davidstacyibm Apr 4, 2025
f16e617
Merge pull request #36 from cloud-native-toolkit/dls-cert-update
davidstacyibm Apr 4, 2025
58213c4
[patch] adding Isabel's changes.
Apr 30, 2025
63a95b2
[patch] fix pipelines.
May 5, 2025
7c63c8b
[patch] fix storage class
May 6, 2025
136980e
[patch] removing duplicated cp4d installation
May 6, 2025
4a37489
[patch] adding optimizer
May 6, 2025
eb010b8
[patch] adding hse
May 6, 2025
fc0e746
[patch] remove duplicated db2 deployment.
May 7, 2025
3a3a68f
[patch] clean up
May 7, 2025
c08454e
[patch] adding kafka fix
May 9, 2025
dbddd98
[patch] disabling Predict.
May 12, 2025
6dacaa2
Merge remote-tracking branch 'upstream/main' into masdev
May 12, 2025
a053ff8
add params for manage components
davidstacyibm May 12, 2025
d6e4352
[patch] adding partial solution
May 15, 2025
3a1ac44
update readme
davidstacyibm May 12, 2025
a969ae5
simplify appws components
davidstacyibm May 15, 2025
0c37697
masappws compents and other cleanup
davidstacyibm May 15, 2025
0d1e6fb
Use new pipeline v0.44 release
davidstacyibm May 17, 2025
d7f613b
add optimizer to manage full
davidstacyibm May 19, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 11 additions & 4 deletions maximo-pipeline-run.yaml → 8.10.x/pipeline-run.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,26 @@
apiVersion: tekton.dev/v1beta1
kind: PipelineRun
metadata:
generateName: pr-mas-core-
generateName: pr-mas-cli-
spec:
params:
- name: uds-email
value: "dev-techzone@ibm.com"
- name: uds-firstname
value: "TechZone"
- name: uds-lastname
value: "Developer"
workspaces:
- name: shared-workspace
- name: ws
volumeClaimTemplate:
spec:
accessModes:
- ReadWriteOnce
- ReadWriteMany
resources:
requests:
storage: 1Gi
pipelineRef:
name: mas-core-deploy
name: mas-cli-deploy
podTemplate:
securityContext:
fsGroup: 65532
296 changes: 296 additions & 0 deletions 8.10.x/pipeline.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,296 @@
---
apiVersion: tekton.dev/v1beta1
kind: Pipeline
metadata:
name: mas-cli-deploy
namespace: default
spec:
workspaces:
- name: ws
params:
- name: namespace
type: string
default: "maximo-suite"
- name: mas-instance-id
type: string
default: "inst1"
- name: mas-workspace-id
type: string
default: "maxworkspace"
- name: mas-workspace-name
type: string
default: "My Maximo Workspace"
- name: mas-catalog-version
type: string
description: "Do not change this unless you know what you are doing"
default: "v8-amd64"
- name: mas-channel
type: string
description: "Controls version of Maximo Operators. Do not change this unless you know what you are doing."
default: "8.10.x"
- name: license-file-secret-name
description: "Store your BYOL license key stored as a base64 encoded arbitrary secret in the kube-system namespace. provide the name of the secret here. the defaul is false which means the pipeline will attempt to download a techzone license"
type: string
default: "false"
- name: use-letsencrypt-certs
description: "use generated letsencrypt certs stored as a secret in the openshift-config namespace under letsencrypt-certs, if false, will generate self-signed certs"
type: string
default: "true"
- name: ibm-entitlement-key
description: "IBM entitlement key. If not set, will use secret manager."
type: string
default: "false"
- name: uds-email
description: "Contact Email"
type: string
- name: uds-firstname
description: "Contact first name"
type: string
- name: uds-lastname
description: "Contact last name"
type: string
- name: storage-rwo
description: "RWO Storage Class"
type: string
default: "ocs-storagecluster-cephfs"
- name: storage-rwx
description: "RWX Storage Class"
type: string
default: "ocs-storagecluster-cephfs"
- name: storage-pipeline
description: "Pipeline Storage Class"
type: string
default: "ocs-storagecluster-cephfs"
- name: storage-accessmode
description: "Install Pipeline storage class access mode (ReadWriteMany or ReadWriteOnce)"
type: string
default: "ReadWriteMany"
finally:
- name: update-configmap-failure
when:
- input: $(tasks.install-mas.status)
operator: notin
values: ["Succeeded"]
taskRef:
kind: Task
name: ibm-pak
params:
- name: SCRIPT
value: |
oc patch configmap/pipeline-output -p '{"data":{"Status":"Pipeline run failed. See Pipeline run for more details and consider running the pipeline again."}}'
- name: update-configmap-success
when:
- input: $(tasks.install-mas.status)
operator: in
values: ["Succeeded"]
taskRef:
kind: Task
name: ibm-pak
params:
- name: SCRIPT
value: |
# get and echo the pipeline the mas installer created
oc patch configmap/pipeline-output -p '{"data":{"Status":"Deployment Pipeline Running."}}'
tasks:
- name: get-ibm-entitlement-key
taskRef:
name: ibmcloud-secrets-manager-get
kind: Task
params:
- name: KEY_ID
value: 968d7819-f2c5-7b67-c420-3c6bfd51521e
- name: SECRETS_MANAGER_ENDPOINT_URL
value: >-
https://afa20521-cd75-4864-843f-e59fd0ffd49d.us-south.secrets-manager.appdomain.cloud
- name: set-retrieved-entitlement-key
when:
- input: "$(params.ibm-entitlement-key)"
operator: in
values: ["false"]
runAfter:
- get-ibm-entitlement-key
params:
- name: retrieved-entitlement-key
value: $(tasks.get-ibm-entitlement-key.results.secret-value)
workspaces:
- name: ws
taskSpec:
workspaces:
- name: ws
params:
- name: retrieved-entitlement-key
steps:
- name: set-entitlement-key
image: quay.io/openshift/origin-cli:4.10
script: |
#!/usr/bin/env bash
echo $(params.retrieved-entitlement-key) > $(workspaces.ws.path)/ek.dat
echo "ek.dat created"
exit
- name: set-provided-entitlement-key
workspaces:
- name: ws
params:
- name: provided-entitlement-key
value: "$(params.ibm-entitlement-key)"
taskSpec:
workspaces:
- name: ws
params:
- name: provided-entitlement-key
steps:
- name: set-entitlement
image: quay.io/openshift/origin-cli:4.10
script: |
#!/usr/bin/env bash
echo $(params.provided-entitlement-key) > $(workspaces.ws.path)/ek.dat
echo "ek.dat created"
exit
- name: get-maximo-licensefile
workspaces:
- name: ws
runAfter:
- set-provided-entitlement-key
- set-retrieved-entitlement-key
params:
- name: KEY_ID
value: 0ae3295c-95dd-c323-82af-1be5587d998f
- name: SECRETS_MANAGER_ENDPOINT_URL
value: >-
https://afa20521-cd75-4864-843f-e59fd0ffd49d.us-south.secrets-manager.appdomain.cloud
- name: LICENSE_FILE_SECRET_NAME
value: "$(params.license-file-secret-name)"
taskSpec:
workspaces:
- name: ws
params:
- name: KEY_ID
- name: SECRETS_MANAGER_ENDPOINT_URL
- name: LICENSE_FILE_SECRET_NAME
steps:
- name: write-maximo-licensefile
image: quay.io/openshift/origin-cli:4.12
script: |
#!/usr/bin/env bash

if [[ $(params.LICENSE_FILE_SECRET_NAME) == "false" ]]; then
# Retrieve the IBM Cloud API Key configured in a `deployer` cluster
export IBMCLOUD_API_KEY=$(oc get secret ibm-secret -n kube-system -o jsonpath='{.data.apiKey}' | base64 -d)
export AUTH_RESPONSE_JSON=$(curl -s -X POST \
"https://iam.cloud.ibm.com/identity/token" \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Accept: application/json' \
--data-urlencode 'grant_type=urn:ibm:params:oauth:grant-type:apikey' \
--data-urlencode "apikey=${IBMCLOUD_API_KEY}")
export ACCESS_TOKEN=$(echo $AUTH_RESPONSE_JSON | grep -o '"access_token":"[^"]*' | grep -o '[^"]*$')
export SECRET_JSON=$(curl -s -X GET --location --header "Authorization: Bearer ${ACCESS_TOKEN}" --header "Accept: application/json" "$(params.SECRETS_MANAGER_ENDPOINT_URL)/api/v2/secrets/$(params.KEY_ID)")
echo $SECRET_JSON | grep -o '"payload":"[^"]*' | grep -o '[^"]*$' | base64 -d > $(workspaces.ws.path)/license.dat

else
oc get secret $(params.LICENSE_FILE_SECRET_NAME) -n default -o jsonpath='{.data.licensefile}' | base64 -d | base64 -d > $(workspaces.ws.path)/license.dat
fi

cat $(workspaces.ws.path)/license.dat
- name: get-tls-certs
when:
- input: "$(params.use-letsencrypt-certs)"
operator: in
values: ["true"]
retries: 2
runAfter:
- get-maximo-licensefile
workspaces:
- name: ws
taskSpec:
workspaces:
- name: ws
steps:
- name: get-tls-certs
image: quay.io/openshift/origin-cli:4.12
script: |
mkdir -p $(workspaces.ws.path)/masconfig/certs
wget -qO - https://letsencrypt.org/certs/lets-encrypt-r3.pem > $(workspaces.ws.path)/masconfig/certs/ca.crt
oc get secret letsencrypt-certs -n openshift-config -o jsonpath="{.data['tls\.key']}" | base64 -d > $(workspaces.ws.path)/masconfig/certs/tls.key
oc get secret letsencrypt-certs -n openshift-config -o jsonpath="{.data['tls\.crt']}" | base64 -d > $(workspaces.ws.path)/masconfig/certs/tls.crt
echo "certs downloaded to masconfig"
ls $(workspaces.ws.path)/masconfig/certs/
echo "tls.key:"
cat $(workspaces.ws.path)/masconfig/certs/tls.key
echo "tls.crt:"
cat $(workspaces.ws.path)/masconfig/certs/tls.crt
- name: install-mas
retries: 2
runAfter:
- get-tls-certs
- get-maximo-licensefile
workspaces:
- name: ws
params:
- name: mas-instance-id
value: "$(params.mas-instance-id)"
- name: mas-workspace-id
value: "$(params.mas-workspace-id)"
- name: mas-workspace-name
value: "$(params.mas-workspace-name)"
- name: mas-catalog-version
value: "$(params.mas-catalog-version)"
- name: mas-channel
value: "$(params.mas-channel)"
- name: uds-email
value: "$(params.uds-email)"
- name: uds-firstname
value: "$(params.uds-firstname)"
- name: uds-lastname
value: "$(params.uds-lastname)"
- name: storage-rwo
value: "$(params.storage-rwo)"
- name: storage-rwx
value: "$(params.storage-rwx)"
- name: storage-pipeline
value: "$(params.storage-pipeline)"
- name: storage-accessmode
value: "$(params.storage-accessmode)"
taskSpec:
workspaces:
- name: ws
params:
- name: mas-instance-id
- name: mas-workspace-id
- name: mas-workspace-name
- name: mas-catalog-version
- name: mas-channel
- name: uds-email
- name: uds-firstname
- name: uds-lastname
- name: storage-rwo
- name: storage-rwx
- name: storage-pipeline
- name: storage-accessmode
steps:
- name: run-mas-cli
image: quay.io/ibmmas/cli:latest
script: |
#!/usr/bin/env bash
# extract license id from license.dat
export LICENSE_ID=$(cat $(workspaces.ws.path)/license.dat | head -1 | cut -d ' ' -f3)

export ENTITLEMENT_KEY=$(cat $(workspaces.ws.path)/ek.dat)

#this sets things up for manual cert management
# got this via https://github.com/ibm-mas/ansible-devops/pull/501
export MAS_CONFIG_DIR=$(workspaces.ws.path)/masconfig
export MAS_MANUAL_CERT_MGMT=True

#run mas install non-interactively
mas install -i $(params.mas-instance-id) \
--accept-license \
-w $(params.mas-workspace-id) \
-W "$(params.mas-workspace-name)" \
-c $(params.mas-catalog-version) \
--mas-channel $(params.mas-channel) \
--ibm-entitlement-key $ENTITLEMENT_KEY \
--license-id $LICENSE_ID --license-file $(workspaces.ws.path)/license.dat \
--uds-email $(params.uds-email) --uds-firstname $(params.uds-firstname) --uds-lastname $(params.uds-lastname) \
--storage-rwo $(params.storage-rwo) --storage-rwx $(params.storage-rwx) \
--storage-pipeline $(params.storage-pipeline) --storage-accessmode $(params.storage-accessmode) \
--no-confirm
Loading