Skip to content

opf/integration-qa-helmfile

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Openproject-Nextcloud Integration Helm Chart

Dependencies

Deploy Setup Locally (k3d)

  1. Setup Kubernetes cluster and necessary resources:

    make setup
  2. Deploy the integration chart:

    make deploy
  3. Check the pods:

    kubectl get pods -n opnc-integration
  4. Add these hosts to your /etc/hosts file:

     sudo echo "127.0.0.1	openproject.test nextcloud.test keycloak.test openproject-assets.test" | sudo tee -a /etc/hosts

NOTE: make sure at least one setup-job-* pod is completed successfully before proceeding.

NAME                                          READY   STATUS      RESTARTS   AGE
setup-job-5nwlm                               0/1     Error       0          17m
setup-job-mkgrf                               0/1     Completed   0          12m

Access the services via the following URLs:

To uninstall the deployment, run:

make teardown

or if you want to delete the K8s cluster as well, run:

make teardown-all

Configuring the Deployment

⚠️ Do not edit charts/opnc-integration/values.yaml directly. All configuration must go into environments/default/config.yaml. This file overrides the chart defaults and is the source of truth for deployments.

Example: Changing app version

To change the version of the integration_openproject app in Nextcloud:

# environments/default/config.yaml
nextcloud:
  extraApps:
    - name: integration_openproject
      version: '2.8.1'

Serve From Git Branch

You can serve the OpenProject and Nextcloud servers using a specific git branch. Set the following config in the config.yaml file:

openproject:
  gitSourceBranch: '<git-branch-name>'

nextcloud:
  gitSourceBranch: '<git-branch-name>'

Similarly, you can enable Nextcloud apps using a specific git branch:

nextcloud:
  enableApps:
    - name: 'app_name'
      gitBranch: '<app-git-branch>'

NOTE: This can take a long time to build the source code and deploy the application.

Serve OpenProject From Local Branch

You can serve the OpenProject using the local source path. Run the following command:

  1. Teardown existing deployment (if any):

    make teardown-all
  2. Setup the cluster again with local source path:

    OP_LOCAL_REPO_DIR=<path-to-local-openproject-repo> make setup
  3. Deploy the dev setup:

    make deploy-dev

NOTE: This can take a long time to build the source code and deploy the application.

Serve Standalone OpenProject (Local Branch)

You can serve the OpenProject in standalone mode for the development setup. This doesn't run Nextcloud and Keycloak. Run the following command:

  1. Teardown existing deployment (if any):

    make teardown-all
  2. Setup the cluster again with local source path:

    OP_LOCAL_REPO_DIR=<path-to-local-openproject-repo> make setup
  3. Deploy the dev setup:

    make dev-op-standalone

Trust Self-Signed Certificates

If you are using self-signed certificates, you may need to trust them in your browser. Follow these steps:

  1. Get the certificate from the cluster:

    kubectl get secret opnc-ca-secret -n opnc-integration -o jsonpath='{.data.ca\.crt}' | base64 -d > opnc-root-ca.crt
  2. Import the certificate:

    a. Linux

    sudo cp opnc-root-ca.crt /usr/local/share/ca-certificates/
    sudo update-ca-certificates

    Import the certificate into the certificates store (for browsers):

    certutil -A -n "NC-OP Integration Root CA" -t TC -d sql:"$HOME/.pki/nssdb" -i opnc-root-ca.crt

    b. macOS

    sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain opnc-root-ca.crt

About

Helmfile-based setup for OpenProject integration QA

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •