diff --git a/.evergreen.yml b/.evergreen.yml index a26b821c..ff684892 100644 --- a/.evergreen.yml +++ b/.evergreen.yml @@ -277,13 +277,14 @@ functions: shell: bash script: | ${PREPARE_SHELL} - # Only record to cypress cloud if this is a pr or a mainline commit. - if [[ "${requester}" == "github_pr" || "${requester}" == "commit" || "$requester" == "patch" ]]; then - yarn cy:run --record --key "${parsley_cypress_record_key}" --reporter junit + # Allow spec filtering for an intentional patch. + if [[ "${requester}" == "patch" ]]; then + yarn cy:run --reporter junit --spec "${cypress_spec}" else yarn cy:run --reporter junit fi + yarn-eslint: command: shell.exec params: @@ -582,3 +583,8 @@ post: - func: attach-logkeeper-logs - func: attach-test-results - func: attach-codegen-diff + +parameters: + - key: cypress_spec + value: cypress/integration/**/* + description: Specify the Cypress spec files to run for user submitted patches running the e2e_test task. diff --git a/src/gql/generated/types.ts b/src/gql/generated/types.ts index 77b667c1..b98ceec1 100644 --- a/src/gql/generated/types.ts +++ b/src/gql/generated/types.ts @@ -699,6 +699,7 @@ export type Host = { instanceType?: Maybe; lastCommunicationTime?: Maybe; noExpiration: Scalars["Boolean"]["output"]; + persistentDnsName: Scalars["String"]["output"]; provider: Scalars["String"]["output"]; runningTask?: Maybe; startedBy: Scalars["String"]["output"]; @@ -1057,6 +1058,7 @@ export type Mutation = { unschedulePatchTasks?: Maybe; unscheduleTask: Task; updateHostStatus: Scalars["Int"]["output"]; + updateParsleySettings?: Maybe; updatePublicKey: Array; updateSpawnHostStatus: Host; updateUserSettings: Scalars["Boolean"]["output"]; @@ -1315,6 +1317,10 @@ export type MutationUpdateHostStatusArgs = { status: Scalars["String"]["input"]; }; +export type MutationUpdateParsleySettingsArgs = { + opts: UpdateParsleySettingsInput; +}; + export type MutationUpdatePublicKeyArgs = { targetKeyName: Scalars["String"]["input"]; updateInfo: PublicKeyInput; @@ -1406,6 +1412,16 @@ export type ParsleyFilterInput = { expression: Scalars["String"]["input"]; }; +/** ParsleySettings contains information about a user's settings for Parsley. */ +export type ParsleySettings = { + __typename?: "ParsleySettings"; + sectionsEnabled: Scalars["Boolean"]["output"]; +}; + +export type ParsleySettingsInput = { + sectionsEnabled?: InputMaybe; +}; + /** Patch is a manually initiated version submitted to test local code changes. */ export type Patch = { __typename?: "Patch"; @@ -2866,6 +2882,15 @@ export type UiConfig = { userVoice?: Maybe; }; +export type UpdateParsleySettingsInput = { + parsleySettings: ParsleySettingsInput; +}; + +export type UpdateParsleySettingsPayload = { + __typename?: "UpdateParsleySettingsPayload"; + parsleySettings?: Maybe; +}; + /** * UpdateVolumeInput is the input to the updateVolume mutation. * Its fields determine how a given volume will be modified. @@ -2912,6 +2937,7 @@ export type User = { displayName: Scalars["String"]["output"]; emailAddress: Scalars["String"]["output"]; parsleyFilters: Array; + parsleySettings: ParsleySettings; patches: Patches; permissions: Permissions; subscriptions?: Maybe>;