Skip to content

Commit a13c825

Browse files
committed
Merge remote-tracking branch 'origin/main' into chore/remove-uv-override-dependencies
# Conflicts: # api/pyproject.toml # api/uv.lock
2 parents b517e02 + 2fc223a commit a13c825

309 files changed

Lines changed: 18436 additions & 951 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,88 @@
1+
name: Notify Slack of a deploy
2+
description: Post a deploy notification to a Slack incoming webhook, prompting a smoke test.
3+
4+
inputs:
5+
webhook_url:
6+
description: The Slack incoming webhook to post the notification to.
7+
required: true
8+
service:
9+
description: The name of the deployed service, e.g. Frontend.
10+
required: true
11+
app_url:
12+
description: The URL of the deployed application, linked from the notification.
13+
required: true
14+
environment:
15+
description: The environment that was deployed to.
16+
required: false
17+
default: production
18+
19+
runs:
20+
using: composite
21+
22+
steps:
23+
- name: Post to Slack
24+
shell: bash
25+
env:
26+
SLACK_WEBHOOK_URL: ${{ inputs.webhook_url }}
27+
SERVICE: ${{ inputs.service }}
28+
APP_URL: ${{ inputs.app_url }}
29+
ENVIRONMENT: ${{ inputs.environment }}
30+
COMMIT_SHA: ${{ github.sha }}
31+
ACTOR: ${{ github.actor }}
32+
WORKFLOW_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
33+
# jq builds the payload so every value is escaped for us, rather than
34+
# interpolated into a JSON heredoc.
35+
run: |
36+
jq -n \
37+
--arg service "$SERVICE" \
38+
--arg environment "$ENVIRONMENT" \
39+
--arg short_sha "${COMMIT_SHA:0:7}" \
40+
--arg actor "$ACTOR" \
41+
--arg app_url "$APP_URL" \
42+
--arg workflow_url "$WORKFLOW_URL" \
43+
'($environment | (.[0:1] | ascii_upcase) + .[1:]) as $env_name |
44+
{
45+
# Slack honours username on this webhook but ignores icon_emoji.
46+
# The avatar comes from the icon set on the Slack app itself.
47+
username: "\($service) Deploy",
48+
text: "🚀 \($service) deployed to \($environment): smoke test required",
49+
blocks: [
50+
{
51+
type: "header",
52+
text: { type: "plain_text", text: "🚀 \($service) deployed to \($environment)" }
53+
},
54+
{
55+
type: "section",
56+
text: {
57+
type: "mrkdwn",
58+
text: "🧪 *\($env_name) smoke test required*\n\nPlease verify the application directly in \($environment)."
59+
}
60+
},
61+
{
62+
type: "section",
63+
fields: [
64+
{ type: "mrkdwn", text: "*Commit:*\n\($short_sha)" },
65+
{ type: "mrkdwn", text: "*Deployed by:*\n@\($actor)" }
66+
]
67+
},
68+
{
69+
type: "actions",
70+
elements: [
71+
{
72+
type: "button",
73+
text: { type: "plain_text", text: "Open \($env_name)" },
74+
url: $app_url
75+
},
76+
{
77+
type: "button",
78+
text: { type: "plain_text", text: "View GitHub Actions" },
79+
url: $workflow_url
80+
}
81+
]
82+
}
83+
]
84+
}' \
85+
| curl --fail-with-body --connect-timeout 10 --max-time 30 -X POST \
86+
-H 'Content-Type: application/json' \
87+
--data @- \
88+
"$SLACK_WEBHOOK_URL"

.github/workflows/frontend-deploy-production.yml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,32 @@ jobs:
7979
npm_build_environment: prod
8080
secrets: inherit
8181

82+
notify-production-smoke-test:
83+
name: Notify Production Smoke Test
84+
needs: deploy-production
85+
if: ${{ needs.deploy-production.result == 'success' }}
86+
runs-on: ubuntu-latest
87+
# Only needs to read the repo to resolve the local action below.
88+
permissions:
89+
contents: read
90+
91+
steps:
92+
- name: Cloning repo
93+
uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5.1.0
94+
with:
95+
# Nothing runs git after this, so the token need not persist.
96+
persist-credentials: false
97+
98+
- name: Notify Slack
99+
# The deploy has already succeeded by this point, so a Slack outage or a
100+
# rotated webhook should not fail the run.
101+
continue-on-error: true
102+
uses: ./.github/actions/notify-slack-deploy
103+
with:
104+
webhook_url: ${{ secrets.SLACK_FRONTEND_DEPLOY_WEBHOOK }}
105+
service: Frontend
106+
app_url: https://app.flagsmith.com
107+
82108
deploy-demo:
83109
name: Deploy to Vercel Demo
84110
needs: run-tests

.github/workflows/update-flagsmith-environment.yml

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,12 @@ on:
77

88
permissions:
99
contents: read
10+
id-token: write # For the Flagsmith trust relationship
1011

1112
jobs:
1213
update_server_defaults:
1314
runs-on: depot-ubuntu-latest
1415
name: Update API Flagsmith Defaults
15-
env:
16-
FLAGSMITH_API_KEY: ${{ secrets.FLAGSMITH_API_KEY }}
1716

1817
steps:
1918
- uses: actions/checkout@fbc6f3992d24b796d5a048ff273f7fcc4a7b6c09 # v5.1.0
@@ -30,7 +29,7 @@ jobs:
3029
permission-pull-requests: write
3130

3231
- name: Install Flagsmith CLI
33-
run: curl -fsSL https://raw.githubusercontent.com/Flagsmith/flagsmith-cli/main/install.sh | sh
32+
uses: Flagsmith/setup-cli@c7154aaa37dff8aca0b66afc1e6722e7ad00c115 # v1.0.0
3433

3534
- name: Update defaults
3635
run: make -C api update-flagsmith-environment

.release-please-manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
{
2-
".": "2.262.0"
2+
".": "2.266.0"
33
}

CHANGELOG.md

Lines changed: 113 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,118 @@
11
# Changelog
22

3+
## [2.266.0](https://github.com/Flagsmith/flagsmith/compare/v2.265.0...v2.266.0) (2026-08-26)
4+
5+
6+
### Features
7+
8+
* cohort CSV sync endpoint and cohort summary on segments ([#8352](https://github.com/Flagsmith/flagsmith/issues/8352)) ([b9b32ba](https://github.com/Flagsmith/flagsmith/commit/b9b32ba4276163276cc02160319eb699d814c28f))
9+
* **cohorts:** Amplitude cohort sync endpoints and sync keys ([#8290](https://github.com/Flagsmith/flagsmith/issues/8290)) ([cc20443](https://github.com/Flagsmith/flagsmith/commit/cc204436c1d6a94de8e99df81d2006b5320c8642))
10+
* create segment from CSV drawer ([#8283](https://github.com/Flagsmith/flagsmith/issues/8283)) ([0102a0c](https://github.com/Flagsmith/flagsmith/commit/0102a0cda47426d265ecf06fd1f53dd323fc9b53))
11+
* Mixpanel cohort sync webhook ([#8338](https://github.com/Flagsmith/flagsmith/issues/8338)) ([c25dc8c](https://github.com/Flagsmith/flagsmith/commit/c25dc8c0fda0cd1fd7482cf1f1fcfe68e4db296a))
12+
* **onboarding:** gradual rollout quest screen ([#8286](https://github.com/Flagsmith/flagsmith/issues/8286)) ([2c313e0](https://github.com/Flagsmith/flagsmith/commit/2c313e0a9c6650457221584499d641b6d0d17cbf))
13+
* **SCIM:** Support deactivated user membership ([#8370](https://github.com/Flagsmith/flagsmith/issues/8370)) ([c0b2a31](https://github.com/Flagsmith/flagsmith/commit/c0b2a316e234ddf58be01f1e95acaf82546a2cff))
14+
* **usage:** Show usage against the plan limit for the current billing period ([#8320](https://github.com/Flagsmith/flagsmith/issues/8320)) ([763938b](https://github.com/Flagsmith/flagsmith/commit/763938ba33e636d23125126231774737672e1e81))
15+
* wire CSV segments to the cohorts API ([#8295](https://github.com/Flagsmith/flagsmith/issues/8295)) ([d0485cc](https://github.com/Flagsmith/flagsmith/commit/d0485ccfdd03fbb2618b8b1171af2fa9c8f628a4))
16+
17+
18+
### Bug Fixes
19+
20+
* **deep-link:** feature value renders as [object Object] ([#8341](https://github.com/Flagsmith/flagsmith/issues/8341)) ([ac56c47](https://github.com/Flagsmith/flagsmith/commit/ac56c47c48953339293e850d1130b855cd4d9c77))
21+
* identify user before sending warehouse test event ([#8356](https://github.com/Flagsmith/flagsmith/issues/8356)) ([3ff27da](https://github.com/Flagsmith/flagsmith/commit/3ff27da1a604d495f61204cc8833db01110c46ab))
22+
* **identities:** label the rows in the identity override selector ([#8372](https://github.com/Flagsmith/flagsmith/issues/8372)) ([0be48ea](https://github.com/Flagsmith/flagsmith/commit/0be48ea8cec38089964a5d3f2a6360bdc05872d2))
23+
* **identities:** multivariate override editor hides the identity's override value ([#8279](https://github.com/Flagsmith/flagsmith/issues/8279)) ([2e5ea89](https://github.com/Flagsmith/flagsmith/commit/2e5ea89025370047ba9caeeb3589cbc9178a99b1))
24+
* keep experiment refresh state until requests settle ([#8351](https://github.com/Flagsmith/flagsmith/issues/8351)) ([0f81888](https://github.com/Flagsmith/flagsmith/commit/0f81888498f2168f4efc0bd2e83da8b9d969ba3c))
25+
* treat stale experiment refresh requests as settled ([#8347](https://github.com/Flagsmith/flagsmith/issues/8347)) ([66b630a](https://github.com/Flagsmith/flagsmith/commit/66b630aebf69bc880c41f90a837ffbca0007434f))
26+
27+
28+
### Refactoring
29+
30+
* **featureStateToValue:** extract into a Flux-free module ([#8344](https://github.com/Flagsmith/flagsmith/issues/8344)) ([0212201](https://github.com/Flagsmith/flagsmith/commit/0212201961af0a7bb0e0cd1da4a11b38a5c4f293))
31+
32+
## [2.265.0](https://github.com/Flagsmith/flagsmith/compare/v2.264.0...v2.265.0) (2026-08-21)
33+
34+
35+
### Features
36+
37+
* Add EMAIL_FRONTEND_DOMAIN override to Djoser ([#8329](https://github.com/Flagsmith/flagsmith/issues/8329)) ([fe16f9b](https://github.com/Flagsmith/flagsmith/commit/fe16f9bd98e1292b65b516e84d2c78b015a5b985))
38+
* **OIDC:** stack the issuer and audience in one column ([#8324](https://github.com/Flagsmith/flagsmith/issues/8324)) ([34b9e67](https://github.com/Flagsmith/flagsmith/commit/34b9e67814b5b021327f4dd727b039e3ec85f407))
39+
40+
41+
### Bug Fixes
42+
43+
* **ci:** Update API Flagsmith Defaults fails with jq compile errors ([#8333](https://github.com/Flagsmith/flagsmith/issues/8333)) ([4eeec59](https://github.com/Flagsmith/flagsmith/commit/4eeec597f04503f4e81392d109edaacd00aa1e54))
44+
* **e2e:** decide the signup flow from the redirect ([#8335](https://github.com/Flagsmith/flagsmith/issues/8335)) ([227fce1](https://github.com/Flagsmith/flagsmith/commit/227fce16fa0978583010a8eb3100b3cdd5a2d644))
45+
* **github:** Trust relationship cannot be created for a repository picked from the list ([#8332](https://github.com/Flagsmith/flagsmith/issues/8332)) ([74eace8](https://github.com/Flagsmith/flagsmith/commit/74eace836c5f310e0694795a2505384e52286f74))
46+
47+
48+
### Dependency Updates
49+
50+
* **api:** update dependency django to v5.2.17 [security] ([#8326](https://github.com/Flagsmith/flagsmith/issues/8326)) ([5a52ccb](https://github.com/Flagsmith/flagsmith/commit/5a52ccbdbba5a0956abbf4921205ca22cdea75ab))
51+
* **frontend:** Bump `nanoid` from 3.3.16 to 3.3.18, `fast-uri` from 3.1.4. to 3.1.5, `brace-expansion` from 1.1.15/2.1.x/5.0.x to 1.1.18/2.1.4/5.0.9 ([#8342](https://github.com/Flagsmith/flagsmith/issues/8342)) ([b62cc1f](https://github.com/Flagsmith/flagsmith/commit/b62cc1fb5a3210baed45d97598289131791da64d))
52+
53+
54+
### CI
55+
56+
* Migrate update-flagsmith-environment to Flagsmith/setup-cli action ([#8331](https://github.com/Flagsmith/flagsmith/issues/8331)) ([41e2c4e](https://github.com/Flagsmith/flagsmith/commit/41e2c4ebb701e80d2208ef4d7b9aaf4dbb77e53f))
57+
58+
59+
### Docs
60+
61+
* **OIDC:** Document OIDC trust relationships and token exchange ([#8045](https://github.com/Flagsmith/flagsmith/issues/8045)) ([5e89680](https://github.com/Flagsmith/flagsmith/commit/5e8968055ade4649202165ae6aa274a33fe03027))
62+
63+
## [2.264.0](https://github.com/Flagsmith/flagsmith/compare/v2.263.0...v2.264.0) (2026-08-19)
64+
65+
66+
### Features
67+
68+
* **OIDC:** adjusts for the trust relationships UI ([#8313](https://github.com/Flagsmith/flagsmith/issues/8313)) ([aedcac7](https://github.com/Flagsmith/flagsmith/commit/aedcac7cdfadf5094777e601e8a99d355b430b1f))
69+
70+
71+
### Bug Fixes
72+
73+
* First evaluation never reported for environments with compressed documents ([#8323](https://github.com/Flagsmith/flagsmith/issues/8323)) ([bf67ab5](https://github.com/Flagsmith/flagsmith/commit/bf67ab517467ca48bd521b33b9109731e00ef014))
74+
* **onboarding:** let segment overrides match the entry decision ([#8288](https://github.com/Flagsmith/flagsmith/issues/8288)) ([b563f09](https://github.com/Flagsmith/flagsmith/commit/b563f09f7148b0d64d9ad7b986cf5889e4ef9c86))
75+
* **value-editor:** restore the border on JSON values ([#8285](https://github.com/Flagsmith/flagsmith/issues/8285)) ([b367023](https://github.com/Flagsmith/flagsmith/commit/b3670237f47d42036b389630d0a11a9f6946b8d6))
76+
77+
## [2.263.0](https://github.com/Flagsmith/flagsmith/compare/v2.262.0...v2.263.0) (2026-08-19)
78+
79+
80+
### Features
81+
82+
* **__future__:** Delete a flag's segment override ([#8307](https://github.com/Flagsmith/flagsmith/issues/8307)) ([b3b2b31](https://github.com/Flagsmith/flagsmith/commit/b3b2b31bb5b88f4911b80abc97c31b1c2f0f810e))
83+
* **__future__:** Experimental new flag endpoint ([#8102](https://github.com/Flagsmith/flagsmith/issues/8102)) ([a013d7b](https://github.com/Flagsmith/flagsmith/commit/a013d7b4d30ed51dcb45f5419b5304705ef029f2))
84+
* **cohorts:** add environment cohort CRUD API ([#8248](https://github.com/Flagsmith/flagsmith/issues/8248)) ([5737118](https://github.com/Flagsmith/flagsmith/commit/57371184289d4b9d533185cdbd67067b3a59b928))
85+
* **cohorts:** apply cohort membership to Postgres identities ([#8315](https://github.com/Flagsmith/flagsmith/issues/8315)) ([65ce12c](https://github.com/Flagsmith/flagsmith/commit/65ce12c16257363612492bbd9f79e91034874158))
86+
* create segment sources fake door modal ([#8272](https://github.com/Flagsmith/flagsmith/issues/8272)) ([dc99d65](https://github.com/Flagsmith/flagsmith/commit/dc99d654ae6649a44912bf52f2900cdcbb94e7a2))
87+
* **identities:** evaluate system traits when matching segments for edge identities ([#8266](https://github.com/Flagsmith/flagsmith/issues/8266)) ([f977732](https://github.com/Flagsmith/flagsmith/commit/f977732e45190a9d09f762f95e3536e9c435de29))
88+
* load HubSpot script on staging ([#8293](https://github.com/Flagsmith/flagsmith/issues/8293)) ([75c1ad9](https://github.com/Flagsmith/flagsmith/commit/75c1ad9389aa877f6dd0bd008a9abd5818ba5276))
89+
* **OIDC:** Add OIDC token exchange endpoint ([#8043](https://github.com/Flagsmith/flagsmith/issues/8043)) ([14e860c](https://github.com/Flagsmith/flagsmith/commit/14e860cc14ecfd4d8bb430e20b5c78cc68139402))
90+
* **OIDC:** Add Trust Relationship CRUD API ([#8042](https://github.com/Flagsmith/flagsmith/issues/8042)) ([8b4d846](https://github.com/Flagsmith/flagsmith/commit/8b4d8466e14c9d5c08739dfe94eae6741f2cf56c))
91+
* **OIDC:** API Access tab with trust relationships UI ([#8044](https://github.com/Flagsmith/flagsmith/issues/8044)) ([b7676e4](https://github.com/Flagsmith/flagsmith/commit/b7676e4946e37cd35a4e7cc111cd7f1ffc0218fb))
92+
* **Segments:** Write rules as plain JSON ([#8245](https://github.com/Flagsmith/flagsmith/issues/8245)) ([8aca57e](https://github.com/Flagsmith/flagsmith/commit/8aca57e5f8664d631d808969d2ff5d2bca52b819))
93+
94+
95+
### Bug Fixes
96+
97+
* **api:** update-traits returns 400 for malformed request body ([#8199](https://github.com/Flagsmith/flagsmith/issues/8199)) ([fccb632](https://github.com/Flagsmith/flagsmith/commit/fccb632aa106e009c863ddf9f6dedae43f68ef9e))
98+
* **edge:** tolerate null system_traits in set_system_trait ([#8270](https://github.com/Flagsmith/flagsmith/issues/8270)) ([6c88198](https://github.com/Flagsmith/flagsmith/commit/6c8819891f1266f7eea431ac041e97ae35b041a0))
99+
* **experimentation:** retry experiment computes on transient ClickHouse errors ([#8273](https://github.com/Flagsmith/flagsmith/issues/8273)) ([a62f3e5](https://github.com/Flagsmith/flagsmith/commit/a62f3e50b2abad79a1837af2befb6bfc55d3ef41))
100+
* **OAuth:** `flagsmith login` never completes for a new signup ([#8281](https://github.com/Flagsmith/flagsmith/issues/8281)) ([0ef78e8](https://github.com/Flagsmith/flagsmith/commit/0ef78e8a656f7dd3e3d5478fefd8bec0e19e219f))
101+
* remove segment_source_beta_requested fake door event ([#8291](https://github.com/Flagsmith/flagsmith/issues/8291)) ([608daaf](https://github.com/Flagsmith/flagsmith/commit/608daafd385ac435faa8ab87b4cf89a8676aff15))
102+
* **Segments:** delete_segment task crashes when segment already deleted ([#8136](https://github.com/Flagsmith/flagsmith/issues/8136)) ([79fc54c](https://github.com/Flagsmith/flagsmith/commit/79fc54cae298b7b8d9762f5192a463a63aa1fea4))
103+
* **Segments:** Flaky test fails because of unspecified Condition ordering ([#8284](https://github.com/Flagsmith/flagsmith/issues/8284)) ([dd04ba6](https://github.com/Flagsmith/flagsmith/commit/dd04ba6003b4a0ed768a580aa28588ea2e8f5fdb))
104+
105+
106+
### Dependency Updates
107+
108+
* **frontend:** update dependency dompurify to v3.4.13 [security] ([#8246](https://github.com/Flagsmith/flagsmith/issues/8246)) ([15ab4ad](https://github.com/Flagsmith/flagsmith/commit/15ab4ad6406d63689cfc33fc18cb8a4a1768785c))
109+
110+
111+
### Docs
112+
113+
* **segments:** Segment membership inspection ([#7399](https://github.com/Flagsmith/flagsmith/issues/7399)) ([bcce4d9](https://github.com/Flagsmith/flagsmith/commit/bcce4d92cdda5baf557e3f8ce290551eb3d29354))
114+
* Update docs custom ssr to use new instance instead of singleton ([#7653](https://github.com/Flagsmith/flagsmith/issues/7653)) ([4b39c43](https://github.com/Flagsmith/flagsmith/commit/4b39c43304a0b24482dac1e9fec12f558851b366))
115+
3116
## [2.262.0](https://github.com/Flagsmith/flagsmith/compare/v2.261.0...v2.262.0) (2026-08-11)
4117

5118

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ ENV ACCESS_LOG_LOCATION=${ACCESS_LOG_LOCATION} \
138138
DJANGO_SETTINGS_MODULE=app.settings.production \
139139
GUNICORN_WORKERS=3 \
140140
GUNICORN_THREADS=2 \
141-
APPLICATION_LOGGERS="app_analytics,audit,code_references,common,core,dynamodb,edge_api,environments,features,import_export,integrations,mcp,oauth2_metadata,organisations,projects,segment_membership,segments,task_processor,users,webhooks,workflows"
141+
APPLICATION_LOGGERS="app_analytics,audit,code_references,common,core,dynamodb,edge_api,environments,features,import_export,integrations,mcp,oauth2_metadata,organisations,projects,segment_membership,segments,task_processor,trust_relationships,users,webhooks,workflows"
142142

143143
ARG CI_COMMIT_SHA
144144
RUN echo ${CI_COMMIT_SHA} > /app/CI_COMMIT_SHA && \

api/Makefile

Lines changed: 29 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -208,30 +208,39 @@ generate-docs-private:
208208
add-known-sdk-version:
209209
uv run python scripts/add-known-sdk-version.py $(opts)
210210

211+
# Exported so the recipe can pass it to jq as a single argument. Do not inline this
212+
# into the recipe: line continuations inside single quotes are passed to jq verbatim.
213+
define MASK_ENVIRONMENT_DOCUMENT_JQ
214+
{
215+
id: 0,
216+
api_key: "masked",
217+
name,
218+
use_identity_composite_key_for_hashing,
219+
feature_states: [.feature_states[] | select(.feature.id | IN($$ids[]))],
220+
project: {
221+
id: 0,
222+
name: .project.name,
223+
hide_disabled_flags: .project.hide_disabled_flags,
224+
segments: [],
225+
organisation: {
226+
id: 0,
227+
name: .project.organisation.name,
228+
feature_analytics: .project.organisation.feature_analytics,
229+
stop_serving_flags: .project.organisation.stop_serving_flags,
230+
persist_trait_data: .project.organisation.persist_trait_data
231+
}
232+
}
233+
}
234+
endef
235+
export MASK_ENVIRONMENT_DOCUMENT_JQ
236+
211237
.PHONY: update-flagsmith-environment
212238
update-flagsmith-environment:
213239
project=$$(jq -er .project ../flagsmith.json) && \
214240
tag=$$(flagsmith api "/api/v1/projects/$$project/tags/" --no-input \
215241
| jq -er '(if type == "array" then . else .results end) | map(select(.label == "api")) | .[0].id') && \
216242
ids=$$(flagsmith api "/api/v1/projects/$$project/features/?tags=$$tag&page_size=1000" --no-input \
217243
| jq -ec '[.results[].id]') && \
218-
flagsmith environment document --no-input | jq --argjson ids "$$ids" '{ \
219-
id: 0, \
220-
api_key: "masked", \
221-
name, \
222-
use_identity_composite_key_for_hashing, \
223-
feature_states: [.feature_states[] | select(.feature.id | IN($$ids[]))], \
224-
project: { \
225-
id: 0, \
226-
name: .project.name, \
227-
hide_disabled_flags: .project.hide_disabled_flags, \
228-
segments: [], \
229-
organisation: { \
230-
id: 0, \
231-
name: .project.organisation.name, \
232-
feature_analytics: .project.organisation.feature_analytics, \
233-
stop_serving_flags: .project.organisation.stop_serving_flags, \
234-
persist_trait_data: .project.organisation.persist_trait_data \
235-
} \
236-
} \
237-
}' > $(FLAGSMITH_DOCUMENT_PATH)
244+
flagsmith environment document --no-input \
245+
| jq --argjson ids "$$ids" "$$MASK_ENVIRONMENT_DOCUMENT_JQ" \
246+
> $(FLAGSMITH_DOCUMENT_PATH)

0 commit comments

Comments
 (0)