Commit Graph

445 Commits

Author SHA1 Message Date
Felix Kunde 27c6ac2565 fix unit tests 2021-06-09 10:37:08 +02:00
Felix Kunde fcd9d27f18 few minor fixes 2021-06-09 10:22:25 +02:00
Rafia Sabih a992494fbf Add toggle to allow namespaced secrets 2021-06-06 13:03:31 +02:00
Rafia Sabih b2171beb67 Merge branch 'master' of https://github.com/zalando/postgres-operator into cross_namespace_secret 2021-05-31 17:05:02 +02:00
Rafia Sabih 09039e8730 fixes as per review comments 2021-05-31 16:07:30 +02:00
Felix Kunde dd9c3907b7
pick first container if postgres is not found (#1505)
* pick first container if postgres is not found

* minor change
2021-05-28 11:44:10 +02:00
Felix Kunde 7884af2d59
get postgres container by name, not index (#1504) 2021-05-27 18:56:58 +02:00
Felix Kunde 48cdca645d
rework additional volume test (#1502) 2021-05-27 18:37:30 +02:00
Quan Hoang af5378eea5
Mount additional volumes to 'postgres' container when 'targetContains` is an empty list (#1475)
* Mount additional volumes to 'postgres' container when 'targetContainers' is an empty list

Co-authored-by: Felix Kunde <felix-kunde@gmx.de>

Co-authored-by: Felix Kunde <felix-kunde@gmx.de>
2021-05-27 14:56:14 +02:00
Rafia Sabih 0f31b5bea6 update docs 2021-05-27 14:43:49 +02:00
Rafia Sabih 25a6417d47 add more test cases for valid usernames 2021-05-27 14:29:04 +02:00
Rafia Sabih 4e9816b029 merge master 2021-05-27 14:02:06 +02:00
Rafia Sabih fd5edea670 Fixes
- update regular expression for usernames
- add test to allow check for valid usernames
- create pg roles with namespace (if any) appended in rolename
2021-05-27 13:25:54 +02:00
Felix Kunde eeb59c5bfd
Rename roles that are removed from PostgresTeam CRD (#1457)
* rename db roles that are removed from manifests

* extend PostgresTeam e2e test

* make suffix configurable and add deprecated field to pgUser struct

* deny LOGIN from deprecated roles

* update feature documentation
2021-05-21 15:49:39 +02:00
Rafia Sabih f57204721d Fix test case 2021-05-21 07:49:44 +02:00
Rafia Sabih 188e812e40 Update unit tests 2021-05-20 20:28:01 +02:00
Rafia Sabih 43154baf39 Fixes
- include namespace in secret name only when namespace is provided
- use username.namespace as key to pgUsers only when namespace is
  provided
- avoid conflict in the role creation in db by checking namespace
  alongwith the username
2021-05-20 19:25:43 +02:00
Rafia Sabih af719c07fe fixes 2021-05-19 17:39:56 +02:00
Rafia Sabih 620502010e add test cases 2021-05-19 05:19:23 +02:00
Rafia Sabih 8cf76d8372 Create cross namespace secrets 2021-05-14 17:10:51 +02:00
Quan Hoang 18e2efe4e3
Update sts when modifying additionalVolumes (#1474) 2021-05-10 12:16:47 +02:00
Felix Kunde f0f7f25d30
Fix go lint errors (#1468)
* fix linter errors
* fix linter errors in kubectl plugin
* update PyYAML dependency in e2e tests
* declare a testVolume in volume_test
2021-05-10 11:48:03 +02:00
Felix Kunde 32e6c135b9
replace statefulset on annotation diff (#1449)
* replace statefulset on annotation diff
* remove update annotation function for statefulset
* add unit test for syncing annotations
* add inherited annotation to unit test
2021-04-22 11:22:52 +02:00
Felix Kunde 6b73ac4282
fix pooler sync with empty cluster name (#1448) 2021-04-09 14:08:28 +02:00
Felix Kunde c18241f187
Bump v1.6.2 (#1433)
* helm chart remove 1.6.0 archive from 1.6.0 archive

* bump operator to v1.6.2

* fix pointer deref

* skip connection pooler sync when empty

* revert pooler change and minor update to version msg

* do not log query on error when creating or altering users
2021-04-01 11:53:07 +02:00
neelasha-09 9e93c0a4ef
Fix for AllowPrivilegeEscalation : issue-1403 (#1412)
* Fix for AllowPrivilegeEscalation : issue-1403

* fixed syntax error

* Aligned the value for parameter

* Aligned the value for parameter

* Update crds.go

* Aligned the parameter spilo_allow_privilege_escalation

* Parameters sorted in Alphabetical order in manifests yaml

* Parameters sorted in Alphabetical order in manifests yaml

* Update pkg/controller/operator_config.go

* Update docs/reference/operator_parameters.md

Co-authored-by: Neelam Sharma <neelasha@amdocs.com>
Co-authored-by: Felix Kunde <felix-kunde@gmx.de>
2021-03-29 10:37:59 +02:00
machine424 78bfba85d2
create global default privileges in the appropriate prepared databases (#1421) 2021-03-26 14:19:26 +01:00
Felix Kunde c9acd52700
Major version upgrade config (#1386)
* reflect new major version upgrade options everywhere

* emit events during major version upgrade
2021-03-09 15:28:15 +01:00
Felix Kunde ff8143770c
Improve rolling upgrades and rolling upgrade continue (#1341)
* add TODOs for moving rooling update label on pods
* steer rolling update via pod annotation
* rename patch method and fix reading flag on sync
* pass only pods to recreatePods function
* do not take address of iterator if you use it later
* add e2e test and pass switchover targets to recreatePods
* add wait_for_pod_failover for e2e test
* add one more e2e test case
* helm chart remove 1.6.0 archive from 1.6.0 archive
* reflect code review feedback
2021-02-26 15:38:58 +01:00
Jan Mussler e837751ae0
Log result. (#1387) 2021-02-26 14:54:26 +01:00
Jan Mussler 636a9a8191
Support major version upgrade via manifest and global upgrades via min version (#1372)
Support major version upgrade trigger via manifest. There is `off` `manual` and `full`. Manual is what you expect, and full will auto upgrade clusters below a certain threshold.
2021-02-25 11:42:43 +01:00
Felix Kunde ca968ca150
Fix empty capabilities (#1380)
* helm chart remove 1.6.0 archive from 1.6.0 archive
* empty pod capabilities should be nil
2021-02-22 17:27:32 +01:00
Felix Kunde 41858a702c
making pgTeamMap a pointer (#1349)
* making pgTeamMap a pointer
* init empty map
* add e2e test for additional teams and members
* update test_min_resource_limits
* add more waiting in node_affinity_test
* no need for pointers in map of postgresTeamMebership
* another minor update on node affinity test
* refactor and fix fetching additional members
2021-02-16 10:38:20 +01:00
Michael Seiwald 17da6bc649
Truncate cronjob name at 52 characters (#1208) 2021-02-15 17:00:21 +01:00
Jan Mussler 772f0ca771
Fix volume sync order. (#1340) 2021-02-12 17:36:11 +01:00
zvier 6aeb92f024
code optimization (#1350)
* pre-allocate cap for slice structure
* if clause is no need because of range, and kubelet also use range
  method to get each capability so there is no side-effect

Signed-off-by: Jeff Zvier <zvier20@gmail.com>
2021-02-09 09:35:24 +01:00
Felix Kunde 0cce565b65
fix when adding only one capability (#1339)
* fix when adding only one capability

* fix error messages in unit test
2021-01-29 16:10:27 +01:00
Felix Kunde 12ad8c91fa
configurable container capabilities (#1336)
* configurable container capabilities

* revert change on TestTLS

* fix e2e test

* minor fix
2021-01-29 14:54:48 +01:00
Jan Mussler 43168ca622
Also sync volumes on updates. (#1330) 2021-01-25 20:28:37 +01:00
Felix Kunde ac2a00c45e
set allowPrivilegeEscalation for deployment templates (#1328)
* set allowPrivilegeEscalation for deployment templates

* securityContext of container, not pod

* aligning

* default service account for pooler
2021-01-25 18:23:29 +01:00
Jan Mussler 4a88f00a3f
Full AWS gp3 support for iops and througput config. (#1261)
Support new AWS EBS volume type `gp3` with `iops` and `throughput` in the manifest.

Co-authored-by: Felix Kunde <felix-kunde@gmx.de>
2021-01-25 10:07:18 +01:00
Felix Kunde 4ea0b5f432
set AllowPrivilegeEscalation on container securityContext (#1326) 2021-01-22 14:06:19 +01:00
Rafia Sabih a9b677c957
Use fake client for connection pooler (#1301)
Connection pooler creation, deletion, and synchronization now tested using fake client API.

Co-authored-by: Rafia Sabih <rafia.sabih@zalando.de>
2021-01-19 17:40:20 +01:00
Felix Kunde 258799b420
allow additional members from other teams (#1314) 2021-01-15 15:11:02 +01:00
Rafia Sabih e398cf8c7e
Avoid syncing when possible (#1274)
Avoid extra syncing in case there are no changes in pooler requirements.
Add pooler specific labels to pooler secrets.
Add test case to check for pooler secret creation and deletion.

Co-authored-by: Rafia Sabih <rafia.sabih@zalando.de>
2021-01-14 09:53:09 +01:00
Sergey Dudoladov b7f4cde541
wrap getting Patroni state into retry (#1293)
Retry calls to Patorni API to get cluster state

Co-authored-by: Sergey Dudoladov <sergey.dudoladov@zalando.de>
2021-01-08 15:08:44 +01:00
Sergey Dudoladov 168b679506
add a prefix for the name of a logical backup job (#1287)
* add a prefix for the name of a logical backup job

Co-authored-by: Sergey Dudoladov <sergey.dudoladov@zalando.de>
2021-01-07 10:38:07 +01:00
Felix Kunde 07c4f52ede
use pointer type for nodeAffinity (#1263)
* use pointer type for nodeAffinity
2020-12-18 12:07:59 +01:00
Jan Mussler a63ad49ef8
Initial commit for new 1.6 release with Postgres 13 support. (#1257)
* Initial commit for new 1.6 release with Postgres 13 support.
* Updating maintainers, Go version, Codeowners.
* Use lazy upgrade image that contains pg13.
* fix typo for ownerReference
* fix clusterrole in helm chart
* reflect GCP logical backup in validation
* improve PostgresTeam docs
* change defaults for enable_pgversion_env_var and storage_resize_mode
* explain manual part of in-place upgrade
* remove gsoc docs

Co-authored-by: Felix Kunde <felix-kunde@gmx.de>
2020-12-17 15:00:29 +01:00
Pavel Tumik 77252e316c
Add node affinity support (#1166)
* Adding nodeaffinity support alongside node_readiness_label
* add documentation for node affinity
* add node affinity e2e test
* add unit test for node affinity

Co-authored-by: Steffen Pøhner Henriksen <str3sses@gmail.com>
Co-authored-by: Adrian Astley <adrian.astley@activision.com>
2020-12-16 14:56:28 +01:00