217 Commits

Author SHA1 Message Date
Zuul
2081013e72 Merge "Dex integration with LDAP Instance - Charts" 2021-05-17 15:13:43 +00:00
Shiba, Sidney (sx3394)
510ead0632 Dex integration with LDAP Instance - Charts
This patchset adds the LDAP connector in the dex chart value where it
can be customized to connect to the lab's ITTESTSERVICES LDAP instance.

The certificates needed by Dex is generated by Cert-Manager in the Ephemeral cluster (Secret named
dex-apiserver-secret) and this Secret is then moved to the Target cluster through the command
"airshipctl phase run clusterctl-move".

This Secret (i.e., tls.crt) is used by API server for the OIDC plugin configuration, which MUST
be done on the KubeadmControlPlane resource in the Ephemeral cluster.

This patchset implements the Approach 1 described in https://hackmd.io/bdPFHBBSQy-IrpPe1U9itg.

Change-Id: I58419cad6b8d770285ceb84a3a3a0e8b3380ef15
2021-05-10 16:54:44 +00:00
Zuul
81d2e09a92 Merge "helm chart for local static volume provisioner" 2021-05-05 15:31:04 +00:00
Zuul
cf3cfb2f50 Merge "chore(img): updates tekton images" 2021-04-22 20:21:15 +00:00
Danny Massa
1a9d7a56ae Pinning connector
Change-Id: I0ea2206b34dda671738f8d6500f1290aee7b1653
2021-04-12 21:10:53 -05:00
Zuul
ebd98ad600 Merge "Add test for pre-defined image tags" 2021-04-07 02:31:49 +00:00
Bartra, Rick (rb560u)
ad8ab089a0 Add test for pre-defined image tags
This commit adds a test to verify that pre-defined image tags are
preserved during development pipeline runs. The deployment-flow configmap
is checked which would contain the original image tag and the image.json
is also checked which would contain the image tag that is actually used.
The test checks if the configmap tag matches the image.json tag, which it
should. The test skips if there is no pre-defined tag.

Change-Id: Ic7661dfc23bc92a460b3b0d5328a6f85b42a6ed4
2021-04-05 15:49:00 +00:00
Tin Lam
2f2458c252 chore(img): updates tekton images
This updates the tekton charts' default image to the latest
version available.

Signed-off-by: Tin Lam <tin@irrational.io>
Change-Id: I71f76bc0448441d22b49b91ca12d0712bb3cd30d
2021-04-04 19:09:10 +00:00
Zuul
5a9ea19cdc Merge "Use quay.io instead of dockerhub for goharbor images" 2021-04-02 21:36:15 +00:00
Zuul
02e90bc91f Merge "Add test to validate on-merge" 2021-04-02 20:27:02 +00:00
Zuul
8e27f68fde Merge "fix(pull): updates default pull policy" 2021-04-02 15:28:34 +00:00
Zuul
844d4481f2 Merge "fix(loki-stack): enable seeing logs for dev pipeline" 2021-04-02 14:13:27 +00:00
FLETCHER
bae0b99ac1 Add test to validate on-merge
Change-Id: I7416af9d0b3354cb382b80b1439c4e484a88f34d
2021-04-02 13:06:34 +00:00
Bartra, Rick (rb560u)
460a817d57 Update CVE report link to not display when artifact doesn't exists
The CVE report link is generated by queries against harbor
including getting the SHA of the image based off the image tag
which is the pipeline run task ID. In cases where an image can't be
found via the tag, the CVE link report should not display. As an
example, the image does not exists in Harbor if the docker build
for the image failed, so in this case no CVE link should be
displayed in Gerrit as the image scan never took place.

Change-Id: I48d7160834f33426dc283c8f8dfa24872929551a
2021-03-29 22:07:22 +00:00
Zuul
7bb63ba9a7 Merge "feat(deploy-k8s): only create tempfs for etcd data during CI" 2021-03-29 15:15:50 +00:00
Rick Bartra
ec0ebbf9cc Use quay.io instead of dockerhub for goharbor images
In an effort to avoid hitting dockerhub pull rate limit, the goharbor
images have been added to quay and will be pulled from there. The images
for Harbor are currently pinned and if a new image is needed it can be
added to quay in the future.

Change-Id: I0b51df27327fdfc666c9354c3588d17acc8a859b
2021-03-29 15:10:38 +00:00
Dustin Specker
2b25e2fce2 fix(loki-stack): enable seeing logs for dev pipeline
This commit does a number of things to enable this functionality.

Regex for variables using $namespace were removed as this assumed
pipeline names were prefixed with the namespace, which is only true for
`jarvis-system`. Instead allow all matches based on the variable query.

Before the variables queried the Loki source, but Loki does not support
filtering like this [1]. The loki service with /loki endpoint can be
additionally added as a Prometheus source and this API is compatible
with filtering as desired.

With this combined, logs for development pipeline are viewable and
dropdowns now are limited in scope to what actually exists. Before all
taskruns were displayed in the dropdown, but now only the taskruns for
the given pipelinerun are selectable.

1 - https://github.com/grafana/grafana/issues/25205

Change-Id: I1b7094947bcad71c40425c3bdab22fabdcd45884
2021-03-29 13:45:27 +00:00
Dustin Specker
e2db919508 feat(deploy-k8s): only create tempfs for etcd data during CI
This enables rebooting the Vagrant VM during local development and
having the Kubernetes cluster persist.

Without this change, the etcd data directory does not persist during
reboots, meaning all Kubernetes resources (besides static pods) are
lost.

Change-Id: I3538491ee69fbb955049130634d7b03ed520403f
2021-03-26 15:04:17 -05:00
kumar lakshman
17df1d9dc2 helm chart for local static volume provisioner
Relates-To: #27

Change-Id: I79c60379d3ac7a049587a3893eee50ef78b481cf
2021-03-26 16:08:31 +00:00
Tin Lam
e249b8b342 fix(pull): updates default pull policy
Some charts' image pull policies are set to "Always". This causes
unnecessary pulls and can trip Dockerhub's rate limit. This patch set
moves the default to IfNotPresent to mitigate.

Signed-off-by: Tin Lam <tin@irrational.io>
Change-Id: Ib16333f1c80c2871ea88f2d66fdce45567e34993
2021-03-25 20:38:24 -05:00
Rick Bartra
ef3118a6d1 Support for using pre-defined image tags within a chart
If a chart has a image tag, it should persists and not be overwritten
by the dev pipeline. If there are no tags or empty tags, then the
context taskrun uuid is used as the tag as it currently is.

Change-Id: Ic687a8998b73c574a9d0857075c11c9205d5cbdc
2021-03-25 17:47:42 +00:00
Svetlana Shturm
9559538d0b Update images to pass security scan
Change-Id: Ibd06325074805d80f2043e108ed212ac14e2b75a
2021-03-22 20:14:21 +00:00
Zuul
d37bae3277 Merge "Revert "Dex Charts - Airship 2 Integration"" 2021-03-19 19:53:21 +00:00
Pete Birley
ed4cbe2948 Revert "Dex Charts - Airship 2 Integration"
This reverts commit ed49ac5aac8203853276a931d9d88dd95e9e6c76.

Reason for revert: not required

Change-Id: Ic6e0bf006c0788095a5bc919486fc64afb89731c
2021-03-19 16:36:22 +00:00
Zuul
b0b449df1a Merge "feat(cleanup) fix(order) fix(config)" 2021-03-18 16:10:45 +00:00
FLETCHER
d66cb1bf91 feat(cleanup) fix(order) fix(config)
This ps allows for the cleanup of components to be controlled using
the configmap for each sample cNF.

This ps also changes the order of promote and functional stages to
occur after merge.

This ps also updates mongodb to use an upstream image and helm chart.

Temporarily allows for anonymous access to images.

Change deployment to use promoted image.

Add remote_namespace to the config_map of mongodb to be deployed into external cluster.

Change-Id: I70f095b6e54d1452dca93b2889d0d937b366a765
2021-03-17 21:10:43 +00:00
Zuul
1b1bfdc8ca Merge "fix(300-deploy-loki): modify Helm test script to support proxy" 2021-03-17 19:29:46 +00:00
Dustin Specker
b689929e2d fix(300-deploy-loki): modify Helm test script to support proxy
Before, invoking the Loki Helm test was skipped if the environment had a
proxy configured.

Now, the configmap for the test is modified with the proxy vars. The
Loki stach Helm chart does not provide any configuration around this, so
we can modify the configmap.

As of right now, the certificates are not needed for `apk add` and only
proxy vars are required.

Change-Id: If58d99555ed299b99bd9bda441856aac326d8379
2021-03-17 11:15:39 -05:00
Tin Lam
710dbe71ae feat(ldap): adds LDAP group to gerrit repo
This adds LDAP group as memeber to the gerrit project in the repository.

Signed-off-by: Tin Lam <tin@irrational.io>
Change-Id: I8e619a9033b9a25d546a458225b921b18222a8f8
2021-03-16 21:32:44 -05:00
Tin Lam
8377c131d9 fix(overrides): place back missing overrides
This patch places back in functionality introduced in [0] that were lost
from refactoring.

[0] https://review.opendev.org/c/airship/charts/+/775065

Signed-off-by: Tin Lam <tin@irrational.io>
Change-Id: I6671fcf36c2fe0867c7bb7886cf24d50c09cfad0
2021-03-16 19:33:04 +00:00
Dustin Specker
37332487b9 fix(5G-SA-core/smf): update smf.yaml to have missing gtpu key
[1] adds a gtpu key. Seems like gtpu is the same as pcfp.

1 - 37e0a714f9

Change-Id: Ic821f5510e87782f9187f8b1a081cdcbc040da3c
2021-03-16 13:27:35 -05:00
Zuul
ac4a99c0b3 Merge "(fix) CVE report not showing" 2021-03-15 17:05:36 +00:00
Zuul
3778366fac Merge "feat(gerrit) adding pipeline to automatically merge submittable patchsets" 2021-03-15 16:50:15 +00:00
Danny Massa
5e9118762e feat(gerrit) adding pipeline to automatically merge submittable patchsets
This 'jarvis-merge' pipeline reruns validation of a submittable
patchset and upon success, will submit the patchset, integrating it to
the main branch.

It will also promote a repository's artifacts from their respective -staging
areas to their non-staging counterparts.

Change-Id: I2e46d95543c6a835f7c17c1097a7ea84b1092f4d
2021-03-12 21:35:03 +00:00
Dustin Specker
ef9d254e55 fix(standard-container/functional): create namespace for Helm release
Before Helm would fail to deploy the release if the namespace was
missing in the cluster. Now Helm will create the namespace if missing.

This isn't hit when the target cluster is the same cluster running the
tekton pipelines. This issue is only hit when the kubeconfig provided
via jarvis.yaml is for another cluster which might not have the
namespace created.

Change-Id: I3fdc6b353a2af2a667884c3250108b9f6c6b9a02
2021-03-12 15:10:40 -06:00
Bartra, Rick (rb560u)
919809dd06 (fix) CVE report not showing
Unauthenticated GET calls to Harbor are no longer supported, so
the build out of the CVE report link was not working due to the
empty information behind retrieved from Harbor. This commit updates
the GET calls to Harbor to use a netrc for authentication.

Change-Id: I65a8ecf2d567f4ac9293dc8d5f39ab40cdca4c84
2021-03-12 12:59:42 -05:00
Zuul
43dea28928 Merge "Create secrets from project's jarvis.yaml" 2021-03-12 17:21:50 +00:00
Zuul
d923bece70 Merge "fix(notary): disables notary environment" 2021-03-12 17:21:47 +00:00
Zuul
99da4eafe0 Merge "docs(install): add note about vpn and vagrant commands behind proxy" 2021-03-11 22:11:13 +00:00
Bartra, Rick
35f14aa728 Create secrets from project's jarvis.yaml
Each CNF project now has a jarvis.yaml defining credentials for
harbor and docker, kubeconfig, and certs. The existing ldap
users are used in the jarvis.yaml for both the staging and
non-staging phases of the CI.

The kubeconfig and harbor-ca entries of the jarvis.yaml are
populated during the 800 script and adds those entries as
base64 encoded data so that the required format (indentations and
spacing) is maintained. The Task-createProjectAccess then decodes
the kubeconfig and harbor-ca and creates the secrets for them in
the correct namespace. Secret creation all takes place in the
Task-createProjectAccess.

Change-Id: If0c243416323e36a6f7797d8d378961552193c0d
2021-03-11 12:03:41 -05:00
Tin Lam
f2fb78d7ea fix(notary): disables notary environment
This remvoes the notary/DCT environment variables. This currently has no
effect on the Ansible docker module and may potentially introduce issues
when the Ansible task is migrated to use shell: docker run.

This will be re-introduced in later patch.

Signed-off-by: Tin Lam <tin@irrational.io>
Change-Id: Ic0924bba94912680ea0ea775d9b08964fcafd4dc
2021-03-11 10:56:21 -06:00
Dustin Specker
c105d75d2c chore(zuul): lint job now enforces linux line endings
Change-Id: I6e557b690782fc479d361eb7664a62003927676e
2021-03-11 14:56:07 +00:00
Dustin Specker
3ef27b21d3 fix(5G-SA-core/smf): update smf.yaml to use subnet instead of pdn
The latest release of ppa/open5gs brings in [1], which changes pdn to
subnet.

1 - 9af4268bab

Change-Id: Ia273a8782ed23d893f49241afd6a6993ec3d17b5
2021-03-11 03:00:59 +00:00
Danny Massa
dbfd217e26 feat(gerrit) Submission Rules
Adds Workflow to Gerrit submission rules. This addtional submission rule applies to both non-verified projects and verified-projects. All repositories now require Workflow and Code-Review, while the Verified label is optional.

Change-Id: Ide975ee757271e8ecb37bfaf471f91d5caf202a6
2021-03-10 21:05:00 +00:00
Zuul
793b6ce156 Merge "feat: enable development pipeline to pass behind proxy with TLS" 2021-03-10 17:43:01 +00:00
Zuul
7c744edd16 Merge "Fix: Moving variable to outside the loop" 2021-03-10 16:48:14 +00:00
Dustin Specker
185f25e356 docs(install): add note about vpn and vagrant commands behind proxy
If behind a vpn, port forwarding is most likely required, so add a note.

Specify environment variables required to use a certificate for a
corporate proxy to download vagrant plugins and boxes.

Change-Id: Ie1f1e709ba9f5ab0a614daaf6d771a904e749bd6
2021-03-10 15:11:59 +00:00
Dustin Specker
ff0eaeb1c8 feat: enable development pipeline to pass behind proxy with TLS
This is a squashed commit, keeping messages intact for history.

- feat(charts/development-pipeline): work behind corporate proxy

dockerd sidecar works behind proxy with cert. Proxy is only needed on
the sidecar to pull public images. The cert is mounted via a host path
so that the proxy may be trusted.

- fix(standard-container/roles): remove installing Helm push plugin

The standard-container Dockerfile already installs the Helm push plugin,
so no reason to try to install it in multiple ansible roles.

I suspect this was originally done because someone tried to use `helm
push` in the ansible role, but Helm couldn't find even though it was
installed in the image. But tekton defines a the HOME env var if you
describe the pod in a cluster. So if we just define HELM_DATA_HOME to
the location where the push plugin is installed we can remove having to
install it in the ansible roles.

- feat(standard-container/roles): use image.image_from for docker build

Change-Id: Ibc3c5f400978cb98d2d2a37b737b56125f4c2aa7
2021-03-10 15:09:11 +00:00
Tin Lam
930ff2db04 fix(gate): fixes securityContext
This patch fixes the securityContext for the tekton-pipeline charts to
unclog a gate failure.

Signed-off-by: Tin Lam <tin@irrational.io>
Change-Id: I5a44f6ecd92c0800aa9f43206fd2c7621d7ac260
2021-03-09 11:24:06 -06:00
Zuul
e30a406416 Merge "feat: support setting up Vagrant behind corporate proxy with TLS" 2021-03-08 21:33:59 +00:00