Skip to content

Commit 9fdd219

Browse files
committed
feat: Add release pipeline v0.1.0
1 parent 3be9ede commit 9fdd219

File tree

4 files changed

+9
-64
lines changed

4 files changed

+9
-64
lines changed

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ FROM build-python AS build-python-private
108108
# and integrate private modules
109109
ARG SAML_REVISION
110110
ARG RBAC_REVISION
111-
ARG WITH="saml,auth-controller,ldap,workflows,licensing"
111+
ARG WITH="saml,auth-controller,ldap,workflows,licensing,release-pipelines"
112112
RUN --mount=type=secret,id=github_private_cloud_token \
113113
echo "https://$(cat /run/secrets/github_private_cloud_token):@github.com" > ${HOME}/.git-credentials && \
114114
git config --global credential.helper store && \

api/conftest.py

Lines changed: 0 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import json
21
import logging
32
import os
43
import site
@@ -18,7 +17,6 @@
1817
from django.core.cache import caches
1918
from django.db.backends.base.creation import TEST_DATABASE_PREFIX
2019
from django.test.utils import setup_databases
21-
from django.urls import reverse
2220
from flag_engine.segments.constants import EQUAL
2321
from moto import mock_dynamodb # type: ignore[import-untyped]
2422
from mypy_boto3_dynamodb.service_resource import DynamoDBServiceResource, Table
@@ -27,7 +25,6 @@
2725
from pytest_django.fixtures import SettingsWrapper
2826
from pytest_django.plugin import blocking_manager_key
2927
from pytest_mock import MockerFixture
30-
from rest_framework import status
3128
from rest_framework.authtoken.models import Token
3229
from rest_framework.test import APIClient
3330
from task_processor.task_run_method import TaskRunMethod
@@ -86,8 +83,6 @@
8683
from tests.test_helpers import fix_issue_3869
8784
from tests.types import (
8885
AdminClientAuthType,
89-
GetEnvironmentFlagsResponseJSONCallable,
90-
GetIdentityFlagsResponseJSONCallable,
9186
WithEnvironmentPermissionsCallable,
9287
WithOrganisationPermissionsCallable,
9388
WithProjectPermissionsCallable,
@@ -572,13 +567,6 @@ def api_client() -> APIClient:
572567
return APIClient()
573568

574569

575-
@pytest.fixture()
576-
def sdk_client(environment: Environment) -> APIClient:
577-
client = APIClient()
578-
client.credentials(HTTP_X_ENVIRONMENT_KEY=environment.api_key)
579-
return client
580-
581-
582570
@pytest.fixture()
583571
def feature(project: Project, environment: Environment) -> Feature:
584572
return Feature.objects.create(name="Test Feature1", project=project) # type: ignore[no-any-return]
@@ -1277,46 +1265,3 @@ def set_github_webhook_secret() -> None:
12771265
from django.conf import settings
12781266

12791267
settings.GITHUB_WEBHOOK_SECRET = "secret-key"
1280-
1281-
1282-
# TODO: move _flags_response_json to common?
1283-
@pytest.fixture()
1284-
def get_environment_flags_response_json(
1285-
sdk_client: APIClient,
1286-
) -> GetEnvironmentFlagsResponseJSONCallable:
1287-
get_environment_flags_url = reverse("api-v1:flags")
1288-
1289-
def _get_environment_flags_response_json(num_expected_flags: int) -> typing.Dict: # type: ignore[type-arg]
1290-
_response = sdk_client.get(get_environment_flags_url)
1291-
assert _response.status_code == status.HTTP_200_OK
1292-
_response_json = _response.json()
1293-
assert len(_response_json) == num_expected_flags
1294-
return _response_json # type: ignore[no-any-return]
1295-
1296-
return _get_environment_flags_response_json
1297-
1298-
1299-
@pytest.fixture()
1300-
def get_identity_flags_response_json(
1301-
sdk_client: APIClient, identity: Identity
1302-
) -> GetIdentityFlagsResponseJSONCallable:
1303-
identities_url = reverse("api-v1:sdk-identities")
1304-
1305-
def _get_identity_flags_response_json( # type: ignore[no-untyped-def]
1306-
num_expected_flags: int, identifier: str = identity.identifier, **traits
1307-
) -> typing.Dict: # type: ignore[type-arg]
1308-
traits = traits or {}
1309-
data = {
1310-
"identifier": identifier,
1311-
"traits": [{"trait_key": k, "trait_value": v} for k, v in traits.items()],
1312-
}
1313-
1314-
_response = sdk_client.post(
1315-
identities_url, data=json.dumps(data), content_type="application/json"
1316-
)
1317-
assert _response.status_code == status.HTTP_200_OK
1318-
_response_json = _response.json()
1319-
assert len(_response_json["flags"]) == num_expected_flags
1320-
return _response_json # type: ignore[no-any-return]
1321-
1322-
return _get_identity_flags_response_json # type: ignore[return-value]

api/poetry.lock

Lines changed: 7 additions & 7 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

api/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -206,7 +206,7 @@ flagsmith-split-testing = { git = "https://github.com/flagsmith/flagsmith-split-
206206
optional = true
207207

208208
[tool.poetry.group.release-pipelines.dependencies]
209-
flagsmith-private = { git = "https://github.com/Flagsmith/flagsmith-private/", rev = "feat/release-pipelines-logic" }
209+
flagsmith-private = { git = "https://github.com/Flagsmith/flagsmith-private/", rev = "v0.1.0" }
210210

211211

212212
[tool.poetry.group.dev.dependencies]

0 commit comments

Comments
 (0)