Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
367 commits
Select commit Hold shift + click to select a range
1cbf25c
Merge pull request #94 from permitio/shaul/per-7743-allow-building-si…
shaulk Sep 3, 2023
8525bc1
add bulk check and check in all tenants in the sidecar
omer9564 Sep 6, 2023
169448c
Merge pull request #95 from permitio/omer/per-7812-sidecar-routes
omer9564 Sep 10, 2023
bcc51ae
add get user permissions in the sidecar
omer9564 Sep 18, 2023
e1891a1
Merge pull request #96 from permitio/omer/per-7875-sidecar-wrapper-api
omer9564 Sep 19, 2023
9f1fef3
add resources and resource_types fields to get user permissions
omer9564 Oct 2, 2023
2318f29
Merge pull request #97 from permitio/omer/per-8046-list-all-user-perm…
omer9564 Oct 3, 2023
2b8e269
fix response model
omer9564 Oct 3, 2023
ecd6b45
Merge pull request #98 from permitio/omer/per-8046-list-all-user-perm…
omer9564 Oct 3, 2023
281312a
Increase OPA_DECISION_LOG_UPLOAD_SIZE_LIMIT to 65536
roekatz Oct 30, 2023
4d7b3af
Merge pull request #100 from permitio/rk/increase-opa-decision-log-up…
roekatz Oct 30, 2023
15eac52
Fix query result logging
roekatz Oct 30, 2023
540e2fd
Merge pull request #101 from permitio/rk/fix-log-query-result
roekatz Oct 30, 2023
ddde5f8
Makefile: load local build into local docker images
roekatz Oct 30, 2023
a369a5b
Make opa querying timeout configurable
roekatz Oct 30, 2023
e4a63aa
API bugfix: Raise fastapi's HTTPException instead of http.client
roekatz Oct 30, 2023
8c51a76
API: Return 504 when OPA queries timeouts
roekatz Oct 30, 2023
ac1bbb7
API: Get rid of redundant is_allowed_fallback_response
roekatz Oct 30, 2023
6e23581
API: Return 502 on opa client errors on is_allowed
roekatz Oct 30, 2023
fb541d8
API: Extend new error handling also for is_allowed_url
roekatz Oct 30, 2023
7dddb31
Rename ALLOWED_QUERY_TIMEOUT -> OPA_CLIENT_QUERY_TIMEOUT
roekatz Oct 30, 2023
35e4979
Decrease default opa query timeout to 1sec
roekatz Oct 30, 2023
16272e8
Merge pull request #102 from permitio/rk/handle-opa-timeout
roekatz Oct 30, 2023
e7726f8
API: Oops, bufix so bad opa status codes will raise an error
roekatz Oct 31, 2023
4d31302
add roles to get-user-permissions schema and add a rule to get user t…
Nov 5, 2023
a301d24
Merge pull request #105 from permitio/asaf/cto-147-salt-urgent-help-w…
omer9564 Nov 5, 2023
58e0840
Introduce unit tests (first testing enforcer API with OPA query mocks)
roekatz Oct 31, 2023
fba9887
allowed_url: Fix handling empty OPA response
roekatz Nov 7, 2023
27ea2c8
Merge pull request #103 from permitio/rk/fix-opa-query-errors
roekatz Nov 7, 2023
e622e22
Merge pull request #104 from permitio/rk/unit-tests
roekatz Nov 7, 2023
192fb2a
change get user tenants to call the tenants rule explicitly to reduce…
omer9564 Nov 16, 2023
23a307c
add missing dev requirements file and add tests to user-tenants route
omer9564 Nov 16, 2023
6be5c9f
Merge pull request #106 from permitio/omer/per-8404-optimize-getusert…
omer9564 Nov 16, 2023
e983807
Point to the right version of private opal client
obsd Nov 29, 2023
621138b
Merge pull request #108 from permitio/oded/per-8470-fix-sidecar-snyk-…
obsd Nov 29, 2023
09795da
add better healthcheck
omer9564 Dec 3, 2023
0fc7a03
enforce 503 when one failure happens
omer9564 Dec 3, 2023
4188ed2
add tests to the new healthcheck
omer9564 Dec 3, 2023
2f06551
fix CR comments
omer9564 Dec 3, 2023
48b8e3d
fix requirements.txt
omer9564 Dec 3, 2023
4ea292d
remove opal from dependencies and fix pre-commit
omer9564 Dec 4, 2023
cdc6504
Merge pull request #110 from permitio/omer/per-8496-add-healthcheck-t…
omer9564 Dec 4, 2023
d824e3e
kill tasks on shutdown
omer9564 Dec 4, 2023
b61c6ea
Merge pull request #111 from permitio/omer/per-8496-add-healthcheck-t…
omer9564 Dec 4, 2023
6087272
add build-release-vanilla to Makefile
omer9564 Dec 4, 2023
a0cbec0
Merge pull request #112 from permitio/omer/per-8509-add-rebac-flag-to…
omer9564 Dec 4, 2023
6f78354
add debug env var
Nov 29, 2023
e779361
Merge pull request #113 from permitio/noam/per-8450-add-flag-for-debu…
noamovich19 Dec 6, 2023
580d471
removed unused rookout
Dec 7, 2023
d1af1c6
Merge pull request #114 from permitio/asaf/cto-204-remove-unused-deps
Dec 7, 2023
b46700e
remove manipulation of input to the get-user-permissions rule
Dec 10, 2023
fa7fe0a
set IS_DEBUG_MODE deafult Flase
Dec 19, 2023
d3f0c5f
Merge pull request #116 from permitio/noam/per-8450-set-flag-debug-mo…
noamovich19 Dec 19, 2023
d49c996
Change Health Routes to Public
gemanor Dec 20, 2023
90064f1
Change Health Routes to Public
gemanor Dec 20, 2023
f8528b3
Change Health Routes to Public
gemanor Dec 20, 2023
87989c4
Open OPA Health
gemanor Dec 20, 2023
725445c
revert redundant changes
gemanor Dec 20, 2023
df5dca4
Merge pull request #117 from permitio/gabriel/per-8546-move-pdp-healt…
obsd Dec 20, 2023
81d5075
Merge pull request #115 from permitio/asaf/cto-196-bugs-in-getuserper…
Feb 18, 2024
570e21b
PER-9197-helm for pdp (#124)
EliMoshkovich Feb 29, 2024
3e46f4e
Add param to allow unauthenticated access to metrics
obsd Mar 6, 2024
6bbc3e3
fix lint
obsd Mar 7, 2024
69619b1
helm test skipping (#128)
EliMoshkovich Mar 7, 2024
a331d3c
Merge branch 'v2' into oded/per-9299-add-env-variable-to-allow-access…
obsd Mar 7, 2024
26b13db
Merge pull request #127 from permitio/oded/per-9299-add-env-variable-…
obsd Mar 7, 2024
eb8d5e0
Revert "set IS_DEBUG_MODE deafult Flase"
omer9564 Mar 12, 2024
e594081
Merge pull request #130 from permitio/omer/per-9354-change-pdp-debug-…
omer9564 Mar 13, 2024
b856d9e
Fix configuration for public opal
roekatz Mar 9, 2024
2673a68
Keep old opal-private's data updater retry config
roekatz Mar 19, 2024
f2715b1
Merge pull request #129 from permitio/rk/support-new-opal
roekatz Mar 20, 2024
92f52b4
Fix opal data fetch retry & timeout configuration
roekatz Mar 20, 2024
969be56
Merge pull request #133 from permitio/rk/fix-data-fetch-retries
roekatz Mar 20, 2024
dd5d126
Increase data updater retry attempts to 14
roekatz Mar 21, 2024
8c3c55b
Merge pull request #134 from permitio/rk/increase-data-fetcher-retry-…
roekatz Mar 21, 2024
874badc
Small refactor - put data updater configuration in a separate method
roekatz Mar 26, 2024
51cef2f
Workaround opal scope's base DataSourceConfig has shorter topic format
roekatz Mar 26, 2024
e7a74b3
Don't override FETCHING_CALLBACK_TIMEOUT, backend already sets it to 60s
roekatz Mar 26, 2024
0bc7800
Merge pull request #135 from permitio/rk/hack-topics-issue
roekatz Mar 26, 2024
401ad0b
PER-9305-pdp-cicd (#132)
EliMoshkovich Mar 28, 2024
aeb1bc2
create a schema for the list role assignments from the PDP
omer9564 Apr 7, 2024
59b395b
add implementation to the list role assignments from local api and tests
omer9564 Apr 11, 2024
aefb7b7
format using pre-commit
omer9564 Apr 11, 2024
36642c2
Merge pull request #137 from permitio/omer/per-9466-create-pdp-endpoint
omer9564 Apr 11, 2024
8955e2f
check tests (#139)
EliMoshkovich Apr 14, 2024
6b53f88
add banner
RazcoDev Apr 15, 2024
f7a59cf
Merge pull request #141 from permitio/raz/per-9686-add-sdks-banners-f…
RazcoDev Apr 15, 2024
107f438
build locally pdp (#142)
EliMoshkovich Apr 17, 2024
bf965f4
add endpoint for getting authorized users
omer9564 Apr 17, 2024
d717c73
add schema example for the AuthorizedUsersResult schema
omer9564 Apr 18, 2024
43874ad
Merge pull request #143 from permitio/omer/per-9549-create-pdp-endpoint
omer9564 May 5, 2024
8210c47
fix dependency conflicts with opal
omer9564 May 5, 2024
ef4935a
Merge pull request #144 from permitio/omer/per-9549-create-pdp-endpoint
omer9564 May 5, 2024
5a62b6d
enforce httpx version
omer9564 May 5, 2024
9bd93c5
Merge pull request #145 from permitio/omer/per-9549-create-pdp-endpoint
omer9564 May 5, 2024
663cf41
PER-9640-pdp-fix-snyk-high (#146)
EliMoshkovich May 9, 2024
f837d77
fix for more volnurability (#147)
EliMoshkovich May 12, 2024
1ef8cd0
dubug tools for pdp image (#149)
EliMoshkovich May 26, 2024
ff35288
add GUNICORN_TIMEOUT env var to configure the gunicorn timeout
omer9564 May 28, 2024
1bd2ae9
Merge pull request #150 from permitio/omer/per-10004-fix-sigabrt-in-p…
omer9564 May 28, 2024
69e364a
dan/per-9969-pdp-expired-jwt-tokens (#148)
danyi1212 Jun 10, 2024
7390b60
dan/per-10032-create-pdp-facts-api-as-proxy-to-backend (#151)
danyi1212 Jun 17, 2024
59f988c
dan/per-10042-generate-data-entry-in-pdp-and-publish-to-opal-server (…
danyi1212 Jun 19, 2024
c1d6fb3
add horizon. to import level
omer9564 Jun 19, 2024
2a8b2f6
Merge pull request #153 from permitio/omer/per-10042-fix-import
omer9564 Jun 19, 2024
ea19c66
fix ci-cd
omer9564 Jun 19, 2024
cf9c707
Merge pull request #154 from permitio/omer/per-10042-fix-import
omer9564 Jun 19, 2024
2dd8c45
Added backend compat local facts routes (#155)
danyi1212 Jun 23, 2024
fa39189
Removing unsupported local routes in the sidecar
obsd Jun 23, 2024
d60b0e2
dan/per-10153-change-local-facts-uploader-to-use-update-callbacks (#157)
danyi1212 Jun 25, 2024
0ffad1f
Update api.py
obsd Jun 26, 2024
6f18172
Merge branch 'v2' into oded/per-10154-remove-unsupported-local-api-in…
obsd Jun 26, 2024
1788b70
Merge pull request #156 from permitio/oded/per-10154-remove-unsupport…
obsd Jul 7, 2024
5736f4d
add api_keys and other refactors for startup pkg
RazcoDev Jul 17, 2024
43f723b
fixes for CR
RazcoDev Jul 29, 2024
1b7bb30
Merge pull request #159 from permitio/raz/per-9141-allow-the-pdp-to-u…
RazcoDev Jul 29, 2024
51d2416
fluentbit and helm (#163)
EliMoshkovich Aug 5, 2024
67e5a32
add allowed ngnix support
RazcoDev Aug 6, 2024
dfe780c
remove redundant allowed
RazcoDev Aug 7, 2024
401128e
move headers to fastapi reoute
RazcoDev Aug 7, 2024
b4b4e12
Merge pull request #166 from permitio/raz/per-10289-support-ngnix
RazcoDev Aug 7, 2024
10ee897
Changed Dockerfile to use Alpine instead of Debian (#172)
danyi1212 Sep 15, 2024
322795e
Added specific setuptools dependency
danyi1212 Sep 15, 2024
dcbd63e
add missing glibc libraries required for opa binary
omer9564 Sep 16, 2024
98d18c7
update README.md about how to build and run the image locally
omer9564 Sep 16, 2024
181d519
fix pre-commit
omer9564 Sep 16, 2024
d367e80
remove pip and setuptools to remove high CVEs
omer9564 Sep 16, 2024
2735296
Merge pull request #175 from permitio/omer/per-10691-fix-pdp-vulnerab…
omer9564 Sep 16, 2024
28d9ca8
make pdp version file name configurable and configure it correctly in…
omer9564 Sep 19, 2024
691b262
feat: set uid and gid in Dockerfile to 1000 (#178)
pierig-n3xtio Sep 19, 2024
4edcd50
Fixed conflicting GID in Dockerfile (#180)
danyi1212 Sep 19, 2024
8b43d8e
Removed use of setuptools in the docker image (#181)
danyi1212 Sep 19, 2024
c99396e
Added copy PDP version file to docker image
danyi1212 Sep 23, 2024
d615d71
create permit_pdp_version in pdp-tests job (#187)
omer9564 Sep 24, 2024
7d2105b
add default OPAL_AUTH_PUBLIC_KEY to the PDP
omer9564 Sep 25, 2024
d9d6354
add comment explaining the env
omer9564 Sep 26, 2024
a0a7b11
Merge pull request #189 from permitio/release/v0.5.6
omer9564 Sep 26, 2024
3d05ca0
Introduce offline mode where remote config is stored to a local encry…
roekatz Sep 29, 2024
32712d3
Improvements
roekatz Sep 29, 2024
11c0149
Enable OPAL's offline mode when sidecar's offline mode is on
roekatz Sep 29, 2024
59dad18
Use more modest values for remote config fetching retries (So offline…
roekatz Sep 29, 2024
d298d2e
Make remote config max fetch retries configurable
roekatz Sep 29, 2024
c0e03b2
Don't raise on failure to backup remote config
roekatz Sep 29, 2024
bcb250a
CR Fixes
roekatz Oct 3, 2024
c6c9254
Merge pull request #190 from permitio/roe/per-9551-fix-pdp-simple-off…
roekatz Oct 6, 2024
68fc282
Upgrade opal to 0.7.12 (was 0.7.6)
roekatz Oct 8, 2024
5382ca3
Merge pull request #192 from permitio/rk/bump-opal-to-0.7.12
roekatz Oct 8, 2024
0720b99
Remove httpx from requirements-dev.txt
roekatz Oct 8, 2024
e0c8bec
Merge pull request #193 from permitio/rk/fix-contradicting-httpx-vers…
roekatz Oct 8, 2024
f1ca236
Bump opal to 0.7.13
roekatz Oct 8, 2024
76e3eba
Merge pull request #194 from permitio/rk/bump-opal-to-0.7.13
roekatz Oct 8, 2024
ef0651f
Fix setup.py + CI tests to install all requirements (dev & regular) a…
roekatz Oct 9, 2024
7ff1638
Fix unrecognized sub-packages (add __init__.py) files
roekatz Oct 9, 2024
81ad9cc
Run pytest as part of CI for PRs & Pushes
roekatz Oct 9, 2024
baba618
Merge pull request #196 from permitio/roe/per-10888-fix-pdp-setup-in-…
roekatz Oct 9, 2024
61d506d
Offline Mode: Make OPAL's backup filename configurable
roekatz Oct 9, 2024
3dc4a05
Merge pull request #197 from permitio/roe/add-policy-store-backup-fil…
roekatz Oct 9, 2024
fe01da5
Added Offline Mode E2E tests (#210)
danyi1212 Nov 6, 2024
e764c4f
Updated OPAL dependency (#215)
danyi1212 Nov 18, 2024
87a6be6
Added explicit OPA path to dockerfile (#216)
danyi1212 Nov 18, 2024
bf160ce
add the ability to communicate with the new go based authz microservice
omer9564 Jul 18, 2024
960d384
add healthy and ready checks to GOPALClient
omer9564 Jul 29, 2024
4687459
mention GOPAL in the log message
omer9564 Jul 29, 2024
ff38d94
fix conflicts and healthcheck issues
omer9564 Aug 11, 2024
5c508f3
change gopal binaries to latest version
omer9564 Aug 11, 2024
e1d77c7
attach the boot logic of the gopal
omer9564 Aug 15, 2024
4add01f
fix pre-commit
omer9564 Aug 15, 2024
9c829af
rename gopal to data_manager and fix cr
omer9564 Aug 15, 2024
a917da2
dan/per-10356-add-incremental-updates-to-the-factstore (#169)
danyi1212 Aug 29, 2024
76a7ce0
add CI to download the data manager binary
omer9564 Sep 11, 2024
cf7b922
fix ci
omer9564 Sep 11, 2024
8d0fa0f
fix ci
omer9564 Sep 11, 2024
0936563
fix ci
omer9564 Sep 11, 2024
306deae
fix ci
omer9564 Sep 11, 2024
de300b8
fix ci
omer9564 Sep 11, 2024
e0ef156
fix ci
omer9564 Sep 11, 2024
3a17eb7
fix ci
omer9564 Sep 11, 2024
25cee99
fix ci
omer9564 Sep 11, 2024
70b52aa
fix ci
omer9564 Sep 11, 2024
b4aaf5a
fix ci
omer9564 Sep 11, 2024
3f9f694
fix no running event loop
omer9564 Sep 11, 2024
f1bb91f
fix ci cd
omer9564 Sep 11, 2024
e5c3ae2
fix pre-commit
omer9564 Sep 11, 2024
84c9e2d
fix unintended addition
Sep 11, 2024
d1f19ae
Dockerfile: support compiling the factstore from source and adding to…
Sep 11, 2024
cb3faf5
remove option to disable remote backup
Sep 11, 2024
41c3cf0
change binary default path
Sep 12, 2024
a67ac09
Added tenant subject in resource property for tenant role assignment
danyi1212 Sep 17, 2024
cb5d2bb
Fixed resource instances table name
danyi1212 Sep 17, 2024
b7525d5
Remove generated IDs for edge facts
danyi1212 Sep 17, 2024
1b972fd
fix PDP CI not being compatible with the vanilla PDP and not download…
omer9564 Sep 22, 2024
2203b00
fix client not checking if data manager is enabled in relevant places
omer9564 Sep 22, 2024
03623c3
fix PDP not handling debug key with a value of null in the response
omer9564 Sep 22, 2024
5971d2a
make build_opal_bundle script copy the new datasync repo for local de…
omer9564 Sep 22, 2024
f56ac31
rebase `v2` and fix dockerfile with alpine
omer9564 Sep 23, 2024
3c5c395
add binding to bulk check in the PDP
omer9564 Oct 8, 2024
3a692b5
fix pre-commit
omer9564 Oct 8, 2024
744e890
add pdp datasync binding for all-tenants and tests
omer9564 Oct 11, 2024
ef84a66
add support for the check proxies of
omer9564 Oct 14, 2024
34a328a
add get user tenants
omer9564 Oct 15, 2024
aef1207
fix pre-commit
omer9564 Oct 27, 2024
808036e
add the usage of external data manager in the role assignments API
omer9564 Oct 22, 2024
5e992a6
fix pre-commit
omer9564 Oct 27, 2024
8fe7a9f
fix use of lstrip to removeprefix
omer9564 Oct 29, 2024
7e7e5b5
fix issue in get user tenants
omer9564 Oct 29, 2024
3f24147
move the legacy parse func outside
omer9564 Oct 29, 2024
698216e
fix issue with the tests
omer9564 Oct 29, 2024
d8b1796
fix deletion of role assignments being done without the user: prefix
omer9564 Oct 29, 2024
b23c4f0
fix wrong elapsed time conversion of ns to ms
omer9564 Nov 2, 2024
b332e7b
add user-permissions usage of external data store
omer9564 Oct 27, 2024
e243a99
fix pre-commit
omer9564 Oct 27, 2024
d9fee6e
add binding for authorized users
omer9564 Nov 5, 2024
ad7bd46
fix schema and rebase issues after all merges
omer9564 Nov 5, 2024
5375c39
fix bulk check tests
omer9564 Nov 6, 2024
825c387
support full delta operation generation for factdb
omer9564 Nov 8, 2024
0ed3db3
fix missing import
omer9564 Nov 10, 2024
24659a4
add pagination when using factdb user permissions
omer9564 Nov 10, 2024
ccc0838
dan/per-10913-fact-db-offline-mode (#217)
danyi1212 Nov 18, 2024
8998808
add pagination when using factdb user permissions
omer9564 Nov 25, 2024
05fc76e
fix wrong variable
omer9564 Nov 25, 2024
52e8235
fix missing changes
omer9564 Nov 25, 2024
affde6d
fix dockerfile after renames
omer9564 Nov 26, 2024
f348266
Merge pull request #195 from permitio/release/v0.7.0
omer9564 Nov 27, 2024
0f8e388
Added data update callbacks config (#219)
danyi1212 Nov 28, 2024
45147fd
env lables annotations resources added (#220)
EliMoshkovich Nov 28, 2024
eaeddf3
fix factdb role assignments pagination and filters
omer9564 Dec 6, 2024
a5600ac
fix debug always not sent to underlying factdb
omer9564 Dec 9, 2024
25c0d84
Merge pull request #222 from permitio/omer/per-11007-add-checks-all-c…
omer9564 Dec 9, 2024
4e2542c
Added Scalar API explorer
danyi1212 Dec 11, 2024
576d069
Merge pull request #224 from permitio/dan/per-11360-add-scalar-api-ex…
danyi1212 Dec 11, 2024
ecc8174
250mb (#225)
EliMoshkovich Dec 12, 2024
b0a75c6
dan/per-11149-add-ruff-to-pdp-repo (#226)
danyi1212 Dec 22, 2024
0073bae
Fixed path (#227)
danyi1212 Dec 24, 2024
c44c215
Fixed report update callback (#228)
danyi1212 Dec 29, 2024
edcd727
include license in the dockerfile
omer9564 Jan 5, 2025
d4070f2
Merge pull request #229 from permitio/omer/per-11594-add-license-to-p…
omer9564 Jan 5, 2025
1744bc6
Create LICENSE
danyi1212 Jan 5, 2025
6f68e53
Merge pull request #230 from permitio/dan/per-11514-add-missing-licen…
omer9564 Jan 5, 2025
eb0f7f7
prevent returning resource_instance on local role assignments for top…
omer9564 Jan 6, 2025
89811e1
Merge pull request #231 from permitio/omer/per-11326-make-factdb-role…
omer9564 Jan 6, 2025
89cb8f7
PER-11681 fix helm publish gh pages (#234)
EliMoshkovich Jan 17, 2025
f00a665
Fixed state file deadlock (#233)
danyi1212 Jan 27, 2025
08eab87
update pdp api example on ecs (#236)
EliMoshkovich Feb 3, 2025
e27a27a
mark_as_latest false (#237)
EliMoshkovich Feb 3, 2025
cdd9c2e
fix breaking changes in aioresponses 0.7.8 requiring host and port al…
omer9564 Feb 4, 2025
bd859c5
Added PDP Tester to CI/CD (#232)
EliMoshkovich Feb 9, 2025
a0f224c
Removed branch from reusable workflow call (#241)
danyi1212 Feb 9, 2025
fffb1c0
Updated OPAL to v0.7.17rc1 (#239)
danyi1212 Feb 9, 2025
73d0c19
Added upgrade pip to docker image (#242)
danyi1212 Feb 10, 2025
3a74fdf
dan/per-11699-fix-race-for-opal-incremental-updates (#243)
danyi1212 Feb 17, 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
4 changes: 4 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
.git/
helm/
.venv/
.github/
59 changes: 59 additions & 0 deletions .github/workflows/deploy_sidecar.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: Deploy sidecar for client
on:
workflow_dispatch:
inputs:
pdp_key:
description: 'Provide a PDP_API_KEY env var'
required: true
type: string
name:
description: 'Provide the name of the sidecar'
required: true
type: string

env:
AWS_REGION: "us-east-2"

permissions:
id-token: write
contents: write

jobs:
deploy-new-sidecar:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3


- name: AWS Auth - Assume OIDC Github Role
uses: aws-actions/configure-aws-credentials@v1.6.1
with:
role-to-assume: ${{ secrets.ROLE_ARN }}
aws-region: ${{ env.AWS_REGION }}
role-session-name: githubactions

- name: Amazon ECR Login - Root Account
id: login-ecr
uses: aws-actions/amazon-ecr-login@v1

- uses: azure/k8s-set-context@v2
with:
method: kubeconfig
kubeconfig: ${{ secrets.KUBE_CONFIG }}
context: prod

- name: Helm Dependency Build
shell: bash
env:
NAMESPACE: permitio
run:
helm dependency build ./helm/ ;

- name: Helm Install
shell: bash
env:
NAMESPACE: sidecars
CHART_DIR: ./helm
run:
helm upgrade --install -f ${{ env.CHART_DIR }}/values-prod.yaml ${{ inputs.name }}-sidecar ${{ env.CHART_DIR }} -n ${{ env.NAMESPACE }} --wait --set expose.dnsHostName="${{ inputs.name }}-sidecar.permit.io" --set config.env.PDP_API_KEY="${{ inputs.pdp_key }}"
62 changes: 0 additions & 62 deletions .github/workflows/dockerhub_push.yml

This file was deleted.

34 changes: 34 additions & 0 deletions .github/workflows/helm_release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Helm Release Workflow

on:
push:
paths:
- 'charts/pdp/Chart.yaml'

jobs:
helm-release:
if: github.event_name == 'push' && github.ref == 'refs/heads/v2'
permissions:
contents: write
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Configure Git
run: |
git config user.name "elimoshkovich"
git config user.email "eli@permit.io"

- name: Install Helm
uses: azure/setup-helm@v3

- name: Run chart-releaser
uses: helm/chart-releaser-action@v1.6.0
env:
CR_TOKEN: "${{ secrets.PAGES }}"
with:
skip_existing: true
mark_as_latest: false
14 changes: 0 additions & 14 deletions .github/workflows/pre-commit.yml

This file was deleted.

146 changes: 146 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,146 @@
name: Build and Push PDP Docker Image

on:
release:
types: [published]

permissions:
id-token: write
contents: read

jobs:
pdp-tests:
# Call the reusable tests workflow.
uses: ./.github/workflows/tests.yml
secrets: inherit

build-and-push-pdp-vanilla:
needs: pdp-tests
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up QEMU
uses: docker/setup-qemu-action@v3

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Pre build - for PDP-Vanilla
run: echo "${{ github.event.release.tag_name }}" | cut -d '-' -f 1 > permit_pdp_version

- name: Build and push PDP-Vanilla - (official release)
if: "!github.event.release.prerelease"
uses: docker/build-push-action@v5
with:
push: true
context: .
platforms: linux/amd64,linux/arm64
tags: permitio/pdp-v2-vanilla:${{ github.event.release.tag_name }}, permitio/pdp-v2-vanilla:latest
cache-from: type=gha
cache-to: type=gha,mode=max

- name: Build and push PDP-Vanilla image - (pre-release)
if: "github.event.release.prerelease"
uses: docker/build-push-action@v5
with:
push: true
context: .
platforms: linux/amd64,linux/arm64
tags: permitio/pdp-v2-vanilla:${{ github.event.release.tag_name }}
cache-from: type=gha
cache-to: type=gha,mode=max

build-and-push-pdp:
needs: pdp-tests
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up QEMU
uses: docker/setup-qemu-action@v3

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- uses: actions/checkout@v3
with:
repository: permitio/permit-opa
ref: main
path: './permit-opa'
token: ${{ secrets.CLONE_REPO_TOKEN }}

- name: Pre build PDP
run: |
echo "${{ github.event.release.tag_name }}" | cut -d '-' -f 1 > permit_pdp_version
rm -rf custom
mkdir custom
build_root="$PWD"
cd ./permit-opa
find * \( -name '*go*' -o -name 'LICENSE.md' \) -print0 | xargs -0 tar -czf "$build_root"/custom/custom_opa.tar.gz --exclude '.*'

- uses: robinraju/release-downloader@v1
with:
repository: permitio/datasync
latest: true
fileName: factstore_server*
token: ${{ secrets.CLONE_REPO_TOKEN }}
out-file-path: "factdb"

- name: Build and push PDP image - (pre-release)
if: "github.event.release.prerelease"
uses: docker/build-push-action@v5
with:
push: true
context: .
platforms: linux/amd64,linux/arm64
build-args: |
ALLOW_MISSING_FACTSTORE=false
tags: permitio/pdp-v2:${{ github.event.release.tag_name }}
cache-from: type=gha
cache-to: type=gha,mode=max

- name: Build and push PDP image - (official release)
if: "!github.event.release.prerelease"
uses: docker/build-push-action@v5
with:
push: true
context: .
platforms: linux/amd64,linux/arm64
build-args: |
ALLOW_MISSING_FACTSTORE=false
tags: permitio/pdp-v2:${{ github.event.release.tag_name }},permitio/pdp-v2:latest
cache-from: type=gha
cache-to: type=gha,mode=max

update-pdp-api-ecs-service:
needs: build-and-push-pdp
runs-on: ubuntu-latest
if: "!github.event.release.prerelease"
steps:
- name: Configure AWS credentials
uses: aws-actions/configure-aws-credentials@v4
with:
role-to-assume: ${{ secrets.PDP_CICD_AWS_ROLE }}
aws-region: us-east-1

- name: Redeploy ECS service - pdp-general-redoc-service
run: |
aws ecs update-service \
--cluster public-pdps-us-east-1 \
--service pdp-general-redoc-service-731a74c \
--force-new-deployment
28 changes: 28 additions & 0 deletions .github/workflows/test_release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Helm test

on:
pull_request:
paths:
- 'charts/pdp/**'

jobs:
helm_test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Create k8s Kind Cluster
uses: helm/kind-action@v1

- name: Deploy Helm Chart in Kind Cluster
working-directory: ./charts/pdp
run: helm install pdp . --set pdp.ApiKey=${{ secrets.PDP_API_KEY }} --create-namespace --namespace pdp --wait

- name: Show PDP logs in case of failure
run: kubectl logs svc/permitio-pdp -n pdp
if: failure()

- name: Show PDP pod status
run: kubectl get pods -n pdp
if: always()
16 changes: 16 additions & 0 deletions .github/workflows/test_release_skipping.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: Helm test

on:
pull_request:
paths-ignore:
- 'charts/pdp/**' # Ignore changes in 'charts/pdp' directory

jobs:
helm_test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Skipping helm_test workflow
run: echo "Skipping helm_test since 'charts/pdp' has not been touched"
Loading
Loading