Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
45 commits
Select commit Hold shift + click to select a range
ae169ae
Update dependency uv to v0.5.27 (#847)
renovate[bot] Feb 4, 2025
9ed1b7c
[DPE-6053] Fix ports (#846)
dragomirp Feb 4, 2025
54fa18a
Sync docs from Discourse (#801)
github-actions[bot] Feb 6, 2025
15a0576
Update dependency uv to v0.5.29 (#848)
renovate[bot] Feb 6, 2025
b2b489f
[MISC] Define charm utility properties (#842)
sinclert-canonical Feb 7, 2025
4b101f4
Update data-platform-workflows to v29.1.0 (#849)
renovate[bot] Feb 7, 2025
6b3c868
Use `charmcraft test` & concierge (#852)
carlcsaposs-canonical Feb 11, 2025
297d181
[MISC] Split topology script (#853)
sinclert-canonical Feb 11, 2025
8413b90
Update charmcraft.yaml build tools (#851)
renovate[bot] Feb 12, 2025
19e58f1
Update dependency uv to v0.5.31 (#858)
renovate[bot] Feb 13, 2025
80be46e
Update canonical/data-platform-workflows action to v30 (#859)
renovate[bot] Feb 13, 2025
62f5987
Use _promote_charm.yaml (#860)
carlcsaposs-canonical Feb 13, 2025
7a69475
Update dependency cryptography to v44.0.1 [SECURITY] (#855)
renovate[bot] Feb 14, 2025
72f77ad
Sync docs from Discourse (#854)
github-actions[bot] Feb 17, 2025
6f6f7f5
Update data-platform-workflows to v30.0.2 (#863)
carlcsaposs-canonical Feb 18, 2025
27892b0
Update canonical/has-signed-canonical-cla action to v2 (#865)
renovate[bot] Feb 18, 2025
842aa47
[DPE-5827] Set all nodes to synchronous replicas (#784)
dragomirp Feb 18, 2025
c9f6554
[DPE-6484] Add scope to promote to primary (#850)
dragomirp Feb 19, 2025
f3b7667
[MISC] Enable RBAC in tests (#861)
dragomirp Feb 19, 2025
d56c485
[MISC] Define charm constants (#862)
sinclert-canonical Feb 19, 2025
58e36c0
Lock file maintenance Python dependencies (#835)
renovate[bot] Feb 19, 2025
fd0c5e2
Update canonical/data-platform-workflows action to v30.1.3 (#856)
renovate[bot] Feb 20, 2025
cada525
Update charmcraft.yaml build tools (#868)
renovate[bot] Feb 21, 2025
e92b56a
Handle missing stanza output (#866)
dragomirp Feb 24, 2025
7d9ec89
Update ghcr.io/canonical/charmed-postgresql:14.15-22.04_edge Docker d…
renovate[bot] Feb 24, 2025
796f0d8
[MISC] Disable storage test on arm (#872)
dragomirp Feb 26, 2025
3b38f9d
Update charmcraft.yaml build tools (#871)
renovate[bot] Feb 26, 2025
e92a015
[MISC] Add degraded status to primary message (#874)
dragomirp Feb 26, 2025
e28ea54
[MISC] Sanitize PostgreSQL extra-user-roles arg (#876)
sinclert-canonical Mar 4, 2025
e1684df
[MISC] Fix PostgreSQL lib function signature (#879)
sinclert-canonical Mar 5, 2025
ebf4756
[MISC] Skip backup tests without creds (#884)
dragomirp Mar 7, 2025
c71262d
[DPE-6679] PostgreSQL Config Improvement (#867)
Pepsiqqq Mar 10, 2025
cce1fd5
Update dependency jinja2 to v3.1.6 [SECURITY] (#882)
renovate[bot] Mar 11, 2025
4c70277
Update canonical/data-platform-workflows action to v30.2.0 (#887)
renovate[bot] Mar 11, 2025
a9683ec
Reduce required approvals on Renovate pull requests by 1 (#880)
carlcsaposs-canonical Mar 12, 2025
4842019
Update dependency uv to v0.6.5 (#878)
renovate[bot] Mar 12, 2025
b18cb6c
Update ghcr.io/canonical/charmed-postgresql Docker tag to v14.17 (#877)
renovate[bot] Mar 14, 2025
1029fd9
Update dependency uv to v0.6.7 (#890)
renovate[bot] Mar 19, 2025
23a1252
Update canonical/data-platform-workflows action to v31 (#891)
renovate[bot] Mar 19, 2025
e03de79
Merge branch 'main' into pg16-fixes
dragomirp Mar 19, 2025
d274145
Try the new timescale
dragomirp Mar 19, 2025
e6a015f
Check PR on */edge
dragomirp Mar 19, 2025
56093a6
Enable cache, disable pgaudit
dragomirp Mar 19, 2025
d441039
Use the right base
dragomirp Mar 19, 2025
b855f4a
Arm tests
dragomirp Mar 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
2 changes: 1 addition & 1 deletion .github/workflows/approve_renovate_pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,6 @@ on:
jobs:
approve-pr:
name: Approve Renovate pull request
uses: canonical/data-platform-workflows/.github/workflows/approve_renovate_pr.yaml@v30.2.0
uses: canonical/data-platform-workflows/.github/workflows/approve_renovate_pr.yaml@v31.0.0
permissions:
pull-requests: write # Needed to approve PR
3 changes: 2 additions & 1 deletion .github/workflows/check_pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,9 @@ on:
- edited
branches:
- main
- '*/edge'

jobs:
check-pr:
name: Check pull request
uses: canonical/data-platform-workflows/.github/workflows/check_charm_pr.yaml@v30.2.0
uses: canonical/data-platform-workflows/.github/workflows/check_charm_pr.yaml@v31.0.0
6 changes: 2 additions & 4 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ on:
jobs:
lint:
name: Lint
uses: canonical/data-platform-workflows/.github/workflows/lint.yaml@v30.2.0
uses: canonical/data-platform-workflows/.github/workflows/lint.yaml@v31.0.0

unit-test:
name: Unit test charm
Expand All @@ -49,9 +49,7 @@ jobs:

build:
name: Build charm
uses: canonical/data-platform-workflows/.github/workflows/build_charm.yaml@v30.2.0
with:
cache: false
uses: canonical/data-platform-workflows/.github/workflows/build_charm.yaml@v31.0.0

integration-test:
name: Integration test charm
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/promote.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ on:
jobs:
promote:
name: Promote charm
uses: canonical/data-platform-workflows/.github/workflows/_promote_charm.yaml@v30.2.0
uses: canonical/data-platform-workflows/.github/workflows/_promote_charm.yaml@v31.0.0
with:
track: '16'
from-risk: ${{ inputs.from-risk }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ jobs:
name: Release charm
needs:
- ci-tests
uses: canonical/data-platform-workflows/.github/workflows/release_charm.yaml@v30.2.0
uses: canonical/data-platform-workflows/.github/workflows/release_charm.yaml@v31.0.0
with:
channel: ${{ github.ref_name }}
artifact-prefix: ${{ needs.ci-tests.outputs.artifact-prefix }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/sync_docs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ on:
jobs:
sync-docs:
name: Sync docs from Discourse
uses: canonical/data-platform-workflows/.github/workflows/sync_docs.yaml@v30.2.0
uses: canonical/data-platform-workflows/.github/workflows/sync_docs.yaml@v31.0.0
with:
reviewers: a-velasco
permissions:
Expand Down
2 changes: 1 addition & 1 deletion charmcraft.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ parts:
PIP_BREAK_SYSTEM_PACKAGES=true python3 -m pip install --user --upgrade pip==25.0.1 # renovate: charmcraft-pip-latest

# Use uv to install poetry so that a newer version of Python can be installed if needed by poetry
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.6.5/uv-installer.sh | sh # renovate: charmcraft-uv-latest
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/astral-sh/uv/releases/download/0.6.7/uv-installer.sh | sh # renovate: charmcraft-uv-latest
# poetry 2.0.0 requires Python >=3.9
if ! "$HOME/.local/bin/uv" python find '>=3.9'
then
Expand Down
9 changes: 0 additions & 9 deletions tests/integration/ha_tests/test_upgrade.py
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
from pytest_operator.plugin import OpsTest
from tenacity import Retrying, stop_after_attempt, wait_fixed

from .. import markers
from ..helpers import (
APPLICATION_NAME,
CHARM_BASE,
Expand All @@ -36,8 +35,6 @@
TIMEOUT = 600


# No arm edge
@markers.amd64_only
@pytest.mark.abort_on_fail
async def test_deploy_latest(ops_test: OpsTest) -> None:
"""Simple test to ensure that the PostgreSQL and application charms get deployed."""
Expand Down Expand Up @@ -68,8 +65,6 @@ async def test_deploy_latest(ops_test: OpsTest) -> None:
assert len(ops_test.model.applications[DATABASE_APP_NAME].units) == 3


# No arm edge
@markers.amd64_only
@pytest.mark.abort_on_fail
async def test_pre_upgrade_check(ops_test: OpsTest) -> None:
"""Test that the pre-upgrade-check action runs successfully."""
Expand All @@ -96,8 +91,6 @@ async def test_pre_upgrade_check(ops_test: OpsTest) -> None:
assert stateful_set.spec.updateStrategy.rollingUpdate.partition == 2, "Partition not set to 2"


# No arm edge
@markers.amd64_only
@pytest.mark.abort_on_fail
async def test_upgrade_from_edge(ops_test: OpsTest, charm, continuous_writes) -> None:
# Start an application that continuously writes data to the database.
Expand Down Expand Up @@ -160,8 +153,6 @@ async def test_upgrade_from_edge(ops_test: OpsTest, charm, continuous_writes) ->
)


# No arm edge
@markers.amd64_only
@pytest.mark.abort_on_fail
async def test_fail_and_rollback(ops_test, charm, continuous_writes) -> None:
# Start an application that continuously writes data to the database.
Expand Down
12 changes: 4 additions & 8 deletions tests/integration/ha_tests/test_upgrade_from_stable.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
from ..helpers import (
APPLICATION_NAME,
CHARM_BASE,
CHARM_BASE_NOBLE,
DATABASE_APP_NAME,
METADATA,
count_switchovers,
Expand All @@ -34,15 +35,14 @@
@pytest.mark.abort_on_fail
async def test_deploy_stable(ops_test: OpsTest) -> None:
"""Simple test to ensure that the PostgreSQL and application charms get deployed."""
# TODO remove once we release to stable
pytest.skip("No 16/stable yet.")
await asyncio.gather(
ops_test.model.deploy(
DATABASE_APP_NAME,
num_units=3,
channel="16/stable",
# TODO move to stable once we release
channel="16/beta",
trust=True,
base=CHARM_BASE,
base=CHARM_BASE_NOBLE,
),
ops_test.model.deploy(
APPLICATION_NAME,
Expand All @@ -62,8 +62,6 @@ async def test_deploy_stable(ops_test: OpsTest) -> None:
@pytest.mark.abort_on_fail
async def test_pre_upgrade_check(ops_test: OpsTest) -> None:
"""Test that the pre-upgrade-check action runs successfully."""
# TODO remove once we release to stable
pytest.skip("No 16/stable yet.")
application = ops_test.model.applications[DATABASE_APP_NAME]
if "pre-upgrade-check" not in await application.get_actions():
logger.info("skipping the test because the charm from 14/stable doesn't support upgrade")
Expand Down Expand Up @@ -95,8 +93,6 @@ async def test_pre_upgrade_check(ops_test: OpsTest) -> None:
@pytest.mark.abort_on_fail
async def test_upgrade_from_stable(ops_test: OpsTest, charm):
"""Test updating from stable channel."""
# TODO remove once we release to stable
pytest.skip("No 16/stable yet.")
# Start an application that continuously writes data to the database.
logger.info("starting continuous writes to the database")
await start_continuous_writes(ops_test, DATABASE_APP_NAME)
Expand Down
3 changes: 1 addition & 2 deletions tests/integration/test_backups_aws.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
from pytest_operator.plugin import OpsTest
from tenacity import Retrying, stop_after_attempt, wait_exponential

from . import architecture
from .conftest import AWS
from .helpers import (
DATABASE_APP_NAME,
Expand All @@ -27,7 +26,7 @@
FAILED_TO_INITIALIZE_STANZA_ERROR_MESSAGE = "failed to initialize stanza, check your S3 settings"
S3_INTEGRATOR_APP_NAME = "s3-integrator"
tls_certificates_app_name = "self-signed-certificates"
tls_channel = "latest/edge" if architecture.architecture == "arm64" else "latest/stable"
tls_channel = "latest/stable"
tls_config = {"ca-common-name": "Test CA"}

logger = logging.getLogger(__name__)
Expand Down
3 changes: 1 addition & 2 deletions tests/integration/test_backups_gcp.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
from pytest_operator.plugin import OpsTest
from tenacity import Retrying, stop_after_attempt, wait_exponential

from . import architecture
from .conftest import GCP
from .helpers import (
DATABASE_APP_NAME,
Expand All @@ -30,7 +29,7 @@
FAILED_TO_INITIALIZE_STANZA_ERROR_MESSAGE = "failed to initialize stanza, check your S3 settings"
S3_INTEGRATOR_APP_NAME = "s3-integrator"
tls_certificates_app_name = "self-signed-certificates"
tls_channel = "latest/edge" if architecture.architecture == "arm64" else "latest/stable"
tls_channel = "latest/stable"
tls_config = {"ca-common-name": "Test CA"}

logger = logging.getLogger(__name__)
Expand Down
3 changes: 1 addition & 2 deletions tests/integration/test_backups_pitr_gcp.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
from pytest_operator.plugin import OpsTest
from tenacity import Retrying, stop_after_attempt, wait_exponential

from . import architecture
from .conftest import GCP
from .helpers import (
DATABASE_APP_NAME,
Expand All @@ -22,7 +21,7 @@
CANNOT_RESTORE_PITR = "cannot restore PITR, juju debug-log for details"
S3_INTEGRATOR_APP_NAME = "s3-integrator"
tls_certificates_app_name = "self-signed-certificates"
tls_channel = "latest/edge" if architecture.architecture == "arm64" else "latest/stable"
tls_channel = "latest/stable"
tls_config = {"ca-common-name": "Test CA"}

logger = logging.getLogger(__name__)
Expand Down
2 changes: 0 additions & 2 deletions tests/spread/test_smoke.py/task.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,3 @@ execute: |
tox run -e integration -- "tests/integration/$TEST_MODULE" --model testing --alluredir="$SPREAD_TASK/allure-results"
artifacts:
- allure-results
systems:
- -ubuntu-24.04-arm
2 changes: 0 additions & 2 deletions tests/spread/test_upgrade_from_stable.py/task.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,5 +5,3 @@ execute: |
tox run -e integration -- "tests/integration/$TEST_MODULE" --model testing --alluredir="$SPREAD_TASK/allure-results"
artifacts:
- allure-results
systems:
- -ubuntu-24.04-arm
2 changes: 0 additions & 2 deletions tests/unit/test_patroni.py
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,6 @@ def test_render_patroni_yml_file(harness, patroni):
replication_password=patroni._replication_password,
rewind_user=REWIND_USER,
rewind_password=patroni._rewind_password,
minority_count=patroni._members_count // 2,
synchronous_node_count=0,
version="16",
patroni_password=patroni._patroni_password,
Expand Down Expand Up @@ -250,7 +249,6 @@ def test_render_patroni_yml_file(harness, patroni):
replication_password=patroni._replication_password,
rewind_user=REWIND_USER,
rewind_password=patroni._rewind_password,
minority_count=patroni._members_count // 2,
synchronous_node_count=0,
version="16",
patroni_password=patroni._patroni_password,
Expand Down