diff --git a/app/experimenter/docs/openapi-schema.json b/app/experimenter/docs/openapi-schema.json index 955d83e329..92fefea1a8 100644 --- a/app/experimenter/docs/openapi-schema.json +++ b/app/experimenter/docs/openapi-schema.json @@ -3040,6 +3040,10 @@ "type": "string", "readOnly": true }, + "isRollout": { + "type": "string", + "readOnly": true + }, "bucketConfig": { "type": "object", "properties": { diff --git a/app/experimenter/docs/swagger-ui.html b/app/experimenter/docs/swagger-ui.html index 0f9ffa981d..402f6a8cc9 100644 --- a/app/experimenter/docs/swagger-ui.html +++ b/app/experimenter/docs/swagger-ui.html @@ -3052,6 +3052,10 @@ "type": "string", "readOnly": true }, + "isRollout": { + "type": "string", + "readOnly": true + }, "bucketConfig": { "type": "object", "properties": { diff --git a/app/experimenter/experiments/api/v6/serializers.py b/app/experimenter/experiments/api/v6/serializers.py index 93116b9618..d3698fade6 100644 --- a/app/experimenter/experiments/api/v6/serializers.py +++ b/app/experimenter/experiments/api/v6/serializers.py @@ -113,6 +113,7 @@ class NimbusExperimentSerializer(serializers.ModelSerializer): userFacingName = serializers.ReadOnlyField(source="name") userFacingDescription = serializers.ReadOnlyField(source="public_description") isEnrollmentPaused = serializers.ReadOnlyField(source="is_paused") + isRollout = serializers.ReadOnlyField(source="is_rollout") bucketConfig = NimbusBucketRangeSerializer(source="bucket_range") featureIds = serializers.SerializerMethodField() probeSets = serializers.ReadOnlyField(default=[]) @@ -138,6 +139,7 @@ class Meta: "userFacingName", "userFacingDescription", "isEnrollmentPaused", + "isRollout", "bucketConfig", "featureIds", "probeSets", diff --git a/app/experimenter/experiments/tests/api/v6/test_serializers.py b/app/experimenter/experiments/tests/api/v6/test_serializers.py index 4f89aaecf0..565b78373a 100644 --- a/app/experimenter/experiments/tests/api/v6/test_serializers.py +++ b/app/experimenter/experiments/tests/api/v6/test_serializers.py @@ -51,6 +51,7 @@ def test_expected_schema_with_desktop_single_feature(self): "endDate": experiment.end_date.isoformat().replace("+00:00", "Z"), "id": experiment.slug, "isEnrollmentPaused": True, + "isRollout": False, "proposedDuration": experiment.proposed_duration, "proposedEnrollment": experiment.proposed_enrollment, "referenceBranch": experiment.reference_branch.slug, @@ -117,7 +118,6 @@ def test_expected_schema_with_desktop_multifeature(self): primary_outcomes=["foo", "bar", "baz"], secondary_outcomes=["quux", "xyzzy"], ) - serializer = NimbusExperimentSerializer(experiment) experiment_data = serializer.data.copy() bucket_data = dict(experiment_data.pop("bucketConfig")) @@ -142,6 +142,7 @@ def test_expected_schema_with_desktop_multifeature(self): "endDate": experiment.end_date.isoformat().replace("+00:00", "Z"), "id": experiment.slug, "isEnrollmentPaused": True, + "isRollout": False, "proposedDuration": experiment.proposed_duration, "proposedEnrollment": experiment.proposed_enrollment, "referenceBranch": experiment.reference_branch.slug,