Skip to content

Commit

Permalink
Merge pull request #16 from developmentseed/feature/general-polder-de…
Browse files Browse the repository at this point in the history
…ployment

Add general polder deployment
  • Loading branch information
pantierra authored Nov 7, 2024
2 parents 703b9b7 + 4dfbd93 commit 42a561b
Show file tree
Hide file tree
Showing 7 changed files with 138 additions and 14 deletions.
25 changes: 18 additions & 7 deletions .github/workflows/check_charts.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,9 @@ on:
- '.github/workflows/check_charts.yaml'
pull_request:

env:
PGO_CHART_VERSION: 5.7.0

jobs:
lint-test:
runs-on: ubuntu-latest
Expand All @@ -25,7 +28,7 @@ jobs:
- name: Check Version
run: |
current_version=$(grep '^version=' pyproject.toml | cut -f2 -d= | tr -d ' ' | tr -d '"')
app_version=$(grep 'appVersion:' deployment/helm/Chart.yaml | cut -f2 -d: | tr -d ' ' | tr -d '"')
app_version=$(grep 'appVersion:' deployment/helm/polder/Chart.yaml | cut -f2 -d: | tr -d ' ' | tr -d '"')
if [[ "$current_version" != "$app_version" ]]; then
echo "❌ current version from pyproject.toml ($current_version) and appVersion from Chart.yaml ($app_version) differs";
exit 1;
Expand All @@ -36,6 +39,10 @@ jobs:
with:
version: v3.9.2

# Add DevSeed helm repository
- name: Add DevSeed helm repository
run: helm repo add devseed https://devseed.com/eoapi-k8s/

- uses: actions/setup-python@v5
with:
python-version: 3.7
Expand All @@ -46,20 +53,20 @@ jobs:
- name: Run chart-testing (list-changed)
id: list-changed
run: |
changed=$(ct list-changed --chart-dirs deployment --target-branch ${{ github.event.repository.default_branch }})
changed=$(ct list-changed --chart-dirs deployment/helm --target-branch ${{ github.event.repository.default_branch }})
if [[ -n "$changed" ]]; then
echo "::set-output name=changed::true"
fi
- name: Run chart-testing (lint)
run: ct lint --chart-dirs deployment --target-branch ${{ github.event.repository.default_branch }}
run: ct lint --chart-dirs deployment/helm --target-branch ${{ github.event.repository.default_branch }}

- name: Build container
- name: Build webapp container
uses: docker/build-push-action@v6
if: steps.list-changed.outputs.changed == 'true'
with:
platforms: linux/amd64
context: .
context: webapp
file: webapp/Dockerfile
push: false
tags: "polder:dev"
Expand All @@ -68,10 +75,14 @@ jobs:
uses: helm/[email protected]
if: steps.list-changed.outputs.changed == 'true'

# Install postgres operator
- name: Install postgres operator
run: helm install --set disable_check_for_upgrades=true pgo oci://registry.developers.crunchydata.com/crunchydata/pgo --version ${PGO_CHART_VERSION}

- name: Load container image in kind cluster
run: kind load docker-image polder:dev --name chart-testing
if: steps.list-changed.outputs.changed == 'true'

- name: Run chart-testing (install)
run: ct install --chart-dirs deployment/k8s
if: steps.list-changed.outputs.changed == 'true'
run: ct install --chart-dirs deployment/helm --target-branch ${{ github.event.repository.default_branch }}
if: steps.list-changed.outputs.changed == 'true'
45 changes: 40 additions & 5 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,7 +1,42 @@
.idea
helm/Chart.lock
.DS_STORE
# Dependency directories
node_modules/

# General files for the project
pkg/*
*.pyc
bin/*
.project
/.bin
/_test/secrets/*.json

# OSX leaves these everywhere on SMB shares
._*

# OSX trash
.DS_Store
.DS_STORE

# Dependency directories
node_modules/
# Files generated by JetBrains IDEs, e.g. IntelliJ IDEA
.idea/
*.iml

# Vscode files
.vscode

# Emacs save files
*~
\#*\#
.\#*

# Vim-related files
[._]*.s[a-w][a-z]
[._]s[a-w][a-z]
*.un~
Session.vim
.netrwhist

# Chart dependencies
**/charts/*.tgz

.history
.venv/
23 changes: 23 additions & 0 deletions deployment/helm/polder/.helmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
9 changes: 9 additions & 0 deletions deployment/helm/polder/Chart.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
dependencies:
- name: eoapi
repository: https://devseed.com/eoapi-k8s/
version: 0.5.0
- name: webapp-polder
repository: file://../webapp-polder
version: 0.1.0
digest: sha256:7d2fa7cbafd56b2614fd50464e710584eac65bf1b64a2b644e9457a3f162567d
generated: "2024-11-04T14:12:53.307694627+01:00"
32 changes: 32 additions & 0 deletions deployment/helm/polder/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
apiVersion: v2
name: polder
description: Create a polder - Web AOI viewer - instance.

type: application

# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.1.0

# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
# It is recommended to use it with quotes.
appVersion: "0.2.0"

maintainers:
- name: pantierra # Felix Delattre
url: https://github.com/pantierra
- name: emmanuelmathot # Emmanuel Mathot
url: https://github.com/emmanuelmathot
- name: ciaransweet # Ciaran Sweet
url: https://github.com/ciaransweet

dependencies:
- name: eoapi
version: 0.5.0
repository: "https://devseed.com/eoapi-k8s/"
- name: webapp-polder
version: 0.1.0
repository: file://../webapp-polder
15 changes: 15 additions & 0 deletions deployment/helm/polder/values.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Default values for polder.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.

# This will set the replicaset count more information can be found here: https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/
replicaCount: 1

# This is to override the chart name.
nameOverride: "polder"
fullnameOverride: "test-polder"

# polder custom configuration
mapboxToken: ""
stacApi: "stac:8080"
tilerApi: "raster:8080"
3 changes: 1 addition & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ classifiers = [
"Programming Language :: Python :: 3.12",
"Topic :: Scientific/Engineering :: GIS",
]
version="0.0.1"
version="0.2.0"
dependencies = [
]

Expand All @@ -41,4 +41,3 @@ Documentation = "https://developmentseed.org/polder/"
Issues = "https://github.com/developmentseed/polder/issues"
Source = "https://github.com/developmentseed/polder"
Changelog = "https://developmentseed.org/polder/release-notes/"

0 comments on commit 42a561b

Please sign in to comment.