Skip to content
GitHubXDiscord

MissionProfile

The MissionProfile resource allows you to manage AWS GroundStation MissionProfiles which define how satellite data is processed and streamed during ground station operations.

Create a basic MissionProfile with the required properties and a couple of common optional settings.

import AWS from "alchemy/aws/control";
const missionProfile = await AWS.GroundStation.MissionProfile("basic-mission-profile", {
name: "BasicMissionProfile",
minimumViableContactDurationSeconds: 300,
dataflowEdges: [{
from: "satellite",
to: "groundStation"
}],
trackingConfigArn: "arn:aws:groundstation:us-east-1:123456789012:tracking-config:example-tracking-config",
contactPrePassDurationSeconds: 60,
contactPostPassDurationSeconds: 60
});

Configure a MissionProfile with enhanced security for streaming and additional tags.

const secureMissionProfile = await AWS.GroundStation.MissionProfile("secure-mission-profile", {
name: "SecureMissionProfile",
minimumViableContactDurationSeconds: 300,
dataflowEdges: [{
from: "satellite",
to: "groundStation"
}],
trackingConfigArn: "arn:aws:groundstation:us-east-1:123456789012:tracking-config:example-tracking-config",
streamsKmsKey: {
keyId: "arn:aws:kms:us-east-1:123456789012:key/example-key-id",
keyType: "KMS"
},
streamsKmsRole: "arn:aws:iam::123456789012:role/example-streams-role",
tags: [{
key: "Environment",
value: "Production"
}]
});

Set up a MissionProfile with specific streaming configurations using KMS keys.

const streamingMissionProfile = await AWS.GroundStation.MissionProfile("streaming-mission-profile", {
name: "StreamingMissionProfile",
minimumViableContactDurationSeconds: 600,
dataflowEdges: [{
from: "satellite",
to: "groundStation"
}],
trackingConfigArn: "arn:aws:groundstation:us-east-1:123456789012:tracking-config:example-tracking-config",
streamsKmsKey: {
keyId: "arn:aws:kms:us-east-1:123456789012:key/example-key-id",
keyType: "KMS"
},
streamsKmsRole: "arn:aws:iam::123456789012:role/example-streams-role",
contactPrePassDurationSeconds: 120,
contactPostPassDurationSeconds: 120
});