Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
5 changes: 0 additions & 5 deletions .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -85,11 +85,6 @@ module.exports = {
name: 'lodash',
message: 'Import using full path `lodash/<function>` instead',
},
{
name: '@flightctl/types',
importNames: ['ApplicationProviderSpec'],
message: 'Use FixedApplicationProviderSpec instead',
},
],
},
],
Expand Down
8 changes: 5 additions & 3 deletions libs/i18n/locales/en/translation.json
Original file line number Diff line number Diff line change
Expand Up @@ -418,14 +418,16 @@
"Inline": "Inline",
"Define application files directly in this interface (custom, one-off).": "Define application files directly in this interface (custom, one-off).",
"The unique identifier for this application.": "The unique identifier for this application.",
"Variable {{ number }}": "Variable {{ number }}",
"Delete variable": "Delete variable",
"Add an application variable": "Add an application variable",
"Application workloads": "Application workloads",
"Define the application workloads that shall run on the device.": "Define the application workloads that shall run on the device.",
"Configure containerized applications and services that will run on your fleet devices. You can deploy single containers, Quadlet applications for advanced container orchestration or inline applications with custom files.": "Configure containerized applications and services that will run on your fleet devices. You can deploy single containers, Quadlet applications for advanced container orchestration or inline applications with custom files.",
"Delete application": "Delete application",
"Add application": "Add application",
"Environment variables": "Environment variables",
"Variable name": "Variable name",
"Variable value": "Variable value",
"Delete variable": "Delete variable",
"Add variable": "Add variable",
"If not present": "If not present",
"Always": "Always",
"Never": "Never",
Expand Down
7 changes: 7 additions & 0 deletions libs/types/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,13 @@ export type { AbsolutePath } from './models/AbsolutePath';
export type { ApplicationContent } from './models/ApplicationContent';
export type { ApplicationEnvVars } from './models/ApplicationEnvVars';
export type { ApplicationPort } from './models/ApplicationPort';
export type { ApplicationProviderBase } from './models/ApplicationProviderBase';
export type { ApplicationProviderSpec } from './models/ApplicationProviderSpec';
export type { ApplicationResourceLimits } from './models/ApplicationResourceLimits';
export type { ApplicationResources } from './models/ApplicationResources';
export { ApplicationsSummaryStatusType } from './models/ApplicationsSummaryStatusType';
export { ApplicationStatusType } from './models/ApplicationStatusType';
export type { ApplicationUser } from './models/ApplicationUser';
export type { ApplicationVolume } from './models/ApplicationVolume';
export type { ApplicationVolumeProviderSpec } from './models/ApplicationVolumeProviderSpec';
export { ApplicationVolumeReclaimPolicy } from './models/ApplicationVolumeReclaimPolicy';
Expand All @@ -35,11 +37,14 @@ export type { CertificateSigningRequest } from './models/CertificateSigningReque
export type { CertificateSigningRequestList } from './models/CertificateSigningRequestList';
export type { CertificateSigningRequestSpec } from './models/CertificateSigningRequestSpec';
export type { CertificateSigningRequestStatus } from './models/CertificateSigningRequestStatus';
export type { ComposeApplication } from './models/ComposeApplication';
export type { Condition } from './models/Condition';
export type { ConditionBase } from './models/ConditionBase';
export { ConditionStatus } from './models/ConditionStatus';
export { ConditionType } from './models/ConditionType';
export type { ConfigProviderSpec } from './models/ConfigProviderSpec';
export type { ContainerApplication } from './models/ContainerApplication';
export type { ContainerApplicationProperties } from './models/ContainerApplicationProperties';
export type { CpuResourceMonitorSpec } from './models/CpuResourceMonitorSpec';
export type { CronExpression } from './models/CronExpression';
export type { CustomDeviceInfo } from './models/CustomDeviceInfo';
Expand Down Expand Up @@ -114,6 +119,7 @@ export type { FleetStatus } from './models/FleetStatus';
export type { GitConfigProviderSpec } from './models/GitConfigProviderSpec';
export type { GitHubIntrospectionSpec } from './models/GitHubIntrospectionSpec';
export type { GitRepoSpec } from './models/GitRepoSpec';
export type { HelmApplication } from './models/HelmApplication';
export type { HookAction } from './models/HookAction';
export type { HookActionRun } from './models/HookActionRun';
export type { HookCondition } from './models/HookCondition';
Expand Down Expand Up @@ -157,6 +163,7 @@ export type { PatchRequest } from './models/PatchRequest';
export type { Percentage } from './models/Percentage';
export type { Permission } from './models/Permission';
export type { PermissionList } from './models/PermissionList';
export type { QuadletApplication } from './models/QuadletApplication';
export type { ReferencedRepositoryUpdatedDetails } from './models/ReferencedRepositoryUpdatedDetails';
export type { RelativePath } from './models/RelativePath';
export type { Repository } from './models/Repository';
Expand Down
16 changes: 16 additions & 0 deletions libs/types/models/ApplicationProviderBase.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
/* generated using openapi-typescript-codegen -- do no edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { AppType } from './AppType';
/**
* Common properties for all application types.
*/
export type ApplicationProviderBase = {
/**
* The application name must be 1–253 characters long, start with a letter or number, and contain no whitespace.
*/
name?: string;
appType: AppType;
};

20 changes: 5 additions & 15 deletions libs/types/models/ApplicationProviderSpec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,9 @@
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ApplicationEnvVars } from './ApplicationEnvVars';
import type { AppType } from './AppType';
import type { ImageApplicationProviderSpec } from './ImageApplicationProviderSpec';
import type { InlineApplicationProviderSpec } from './InlineApplicationProviderSpec';
export type ApplicationProviderSpec = (ApplicationEnvVars & {
/**
* The application name must be 1–253 characters long, start with a letter or number, and contain no whitespace.
*/
name?: string;
appType: AppType;
/**
* The username of the system user this application should be run under. This is not the same as the user within any containers of the application (if applicable). Defaults to the user that the agent runs as (generally root) if not specified.
*/
runAs?: string;
} & (ImageApplicationProviderSpec | InlineApplicationProviderSpec));
import type { ComposeApplication } from './ComposeApplication';
import type { ContainerApplication } from './ContainerApplication';
import type { HelmApplication } from './HelmApplication';
import type { QuadletApplication } from './QuadletApplication';
export type ApplicationProviderSpec = (ComposeApplication | QuadletApplication | ContainerApplication | HelmApplication);

11 changes: 11 additions & 0 deletions libs/types/models/ApplicationUser.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
/* generated using openapi-typescript-codegen -- do no edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
export type ApplicationUser = {
/**
* The username of the system user this application should be run under. This is not the same as the user within any containers of the application (if applicable). Defaults to the user that the agent runs as (generally root) if not specified.
*/
runAs?: string;
};

11 changes: 11 additions & 0 deletions libs/types/models/ComposeApplication.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
/* generated using openapi-typescript-codegen -- do no edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ApplicationEnvVars } from './ApplicationEnvVars';
import type { ApplicationProviderBase } from './ApplicationProviderBase';
import type { ApplicationVolumeProviderSpec } from './ApplicationVolumeProviderSpec';
import type { ImageApplicationProviderSpec } from './ImageApplicationProviderSpec';
import type { InlineApplicationProviderSpec } from './InlineApplicationProviderSpec';
export type ComposeApplication = (ApplicationProviderBase & ApplicationEnvVars & ApplicationVolumeProviderSpec & (ImageApplicationProviderSpec | InlineApplicationProviderSpec));

22 changes: 22 additions & 0 deletions libs/types/models/ContainerApplication.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
/* generated using openapi-typescript-codegen -- do no edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ApplicationEnvVars } from './ApplicationEnvVars';
import type { ApplicationPort } from './ApplicationPort';
import type { ApplicationProviderBase } from './ApplicationProviderBase';
import type { ApplicationResources } from './ApplicationResources';
import type { ApplicationUser } from './ApplicationUser';
import type { ApplicationVolumeProviderSpec } from './ApplicationVolumeProviderSpec';
export type ContainerApplication = (ApplicationProviderBase & ApplicationEnvVars & ApplicationUser & ApplicationVolumeProviderSpec & {
/**
* Reference to the image for this container.
*/
image: string;
/**
* Port mappings.
*/
ports?: Array<ApplicationPort>;
resources?: ApplicationResources;
});

17 changes: 17 additions & 0 deletions libs/types/models/ContainerApplicationProperties.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
/* generated using openapi-typescript-codegen -- do no edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ApplicationPort } from './ApplicationPort';
import type { ApplicationResources } from './ApplicationResources';
/**
* Properties for container application deployments.
*/
export type ContainerApplicationProperties = {
/**
* Port mappings.
*/
ports?: Array<ApplicationPort>;
resources?: ApplicationResources;
};

24 changes: 24 additions & 0 deletions libs/types/models/HelmApplication.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
/* generated using openapi-typescript-codegen -- do no edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ApplicationProviderBase } from './ApplicationProviderBase';
export type HelmApplication = (ApplicationProviderBase & {
/**
* Reference to the chart for this helm application.
*/
image: string;
/**
* The target namespace for the application deployment.
*/
namespace?: string;
/**
* Configuration values for the application. Supports arbitrarily nested structures.
*/
values?: Record<string, any>;
/**
* List of values files to apply during deployment. Files are relative paths and applied in array order before user-provided values.
*/
valuesFiles?: Array<string>;
});

24 changes: 2 additions & 22 deletions libs/types/models/ImageApplicationProviderSpec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,30 +2,10 @@
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ApplicationPort } from './ApplicationPort';
import type { ApplicationResources } from './ApplicationResources';
import type { ApplicationVolumeProviderSpec } from './ApplicationVolumeProviderSpec';
export type ImageApplicationProviderSpec = (ApplicationVolumeProviderSpec & {
export type ImageApplicationProviderSpec = {
/**
* Reference to the OCI image or artifact for the application package.
*/
image: string;
/**
* Kubernetes namespace for helm chart installation. Only applicable when appType is 'helm'.
*/
namespace?: string;
/**
* Helm values to pass during install/upgrade. Supports arbitrarily nested YAML structures. Only applicable when appType is 'helm'.
*/
values?: Record<string, any>;
/**
* List of values files from within the chart to use during install/upgrade. Files are relative to chart root and are applied in array order before user-provided values. Only applicable when appType is 'helm'.
*/
valuesFiles?: Array<string>;
/**
* Port mappings.
*/
ports?: Array<ApplicationPort>;
resources?: ApplicationResources;
});
};

5 changes: 2 additions & 3 deletions libs/types/models/InlineApplicationProviderSpec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,10 @@
/* tslint:disable */
/* eslint-disable */
import type { ApplicationContent } from './ApplicationContent';
import type { ApplicationVolumeProviderSpec } from './ApplicationVolumeProviderSpec';
export type InlineApplicationProviderSpec = (ApplicationVolumeProviderSpec & {
export type InlineApplicationProviderSpec = {
/**
* A list of application content.
*/
inline: Array<ApplicationContent>;
});
};

12 changes: 12 additions & 0 deletions libs/types/models/QuadletApplication.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
/* generated using openapi-typescript-codegen -- do no edit */
/* istanbul ignore file */
/* tslint:disable */
/* eslint-disable */
import type { ApplicationEnvVars } from './ApplicationEnvVars';
import type { ApplicationProviderBase } from './ApplicationProviderBase';
import type { ApplicationUser } from './ApplicationUser';
import type { ApplicationVolumeProviderSpec } from './ApplicationVolumeProviderSpec';
import type { ImageApplicationProviderSpec } from './ImageApplicationProviderSpec';
import type { InlineApplicationProviderSpec } from './InlineApplicationProviderSpec';
export type QuadletApplication = (ApplicationProviderBase & ApplicationEnvVars & ApplicationUser & ApplicationVolumeProviderSpec & (ImageApplicationProviderSpec | InlineApplicationProviderSpec));

Loading