koyeb logo
koyeb v0.1.7, Nov 30 22

koyeb.KoyebService

Explore with Pulumi AI

Example Usage

using System.Collections.Generic;
using Pulumi;
using Koyeb = Pulumi.Koyeb;

return await Deployment.RunAsync(() => 
{
    var my_service = new Koyeb.KoyebService("my-service", new()
    {
        AppName = koyeb_app.My_app.Name,
        Definition = new Koyeb.Inputs.KoyebServiceDefinitionArgs
        {
            Name = "my-service",
            InstanceTypes = new Koyeb.Inputs.KoyebServiceDefinitionInstanceTypesArgs
            {
                Type = "micro",
            },
            Ports = new[]
            {
                new Koyeb.Inputs.KoyebServiceDefinitionPortArgs
                {
                    Port = 3000,
                    Protocol = "http",
                },
            },
            Scalings = new Koyeb.Inputs.KoyebServiceDefinitionScalingsArgs
            {
                Min = 1,
                Max = 1,
            },
            Envs = new[]
            {
                new Koyeb.Inputs.KoyebServiceDefinitionEnvArgs
                {
                    Key = "FOO",
                    Value = "BAR",
                },
            },
            Routes = new[]
            {
                new Koyeb.Inputs.KoyebServiceDefinitionRouteArgs
                {
                    Path = "/",
                    Port = 3000,
                },
            },
            Regions = new[]
            {
                "par",
            },
            Docker = new Koyeb.Inputs.KoyebServiceDefinitionDockerArgs
            {
                Image = "koyeb/demo",
            },
        },
    }, new CustomResourceOptions
    {
        DependsOn = new[]
        {
            koyeb_app.My_app,
        },
    });

});
package main

import (
	"github.com/pulumi/pulumi-koyeb/sdk/go/koyeb"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := koyeb.NewKoyebService(ctx, "my-service", &koyeb.KoyebServiceArgs{
			AppName: pulumi.Any(koyeb_app.My_app.Name),
			Definition: &KoyebServiceDefinitionArgs{
				Name: pulumi.String("my-service"),
				InstanceTypes: &KoyebServiceDefinitionInstanceTypesArgs{
					Type: pulumi.String("micro"),
				},
				Ports: KoyebServiceDefinitionPortArray{
					&KoyebServiceDefinitionPortArgs{
						Port:     pulumi.Int(3000),
						Protocol: pulumi.String("http"),
					},
				},
				Scalings: &KoyebServiceDefinitionScalingsArgs{
					Min: pulumi.Int(1),
					Max: pulumi.Int(1),
				},
				Envs: KoyebServiceDefinitionEnvArray{
					&KoyebServiceDefinitionEnvArgs{
						Key:   pulumi.String("FOO"),
						Value: pulumi.String("BAR"),
					},
				},
				Routes: KoyebServiceDefinitionRouteArray{
					&KoyebServiceDefinitionRouteArgs{
						Path: pulumi.String("/"),
						Port: pulumi.Int(3000),
					},
				},
				Regions: pulumi.StringArray{
					pulumi.String("par"),
				},
				Docker: &KoyebServiceDefinitionDockerArgs{
					Image: pulumi.String("koyeb/demo"),
				},
			},
		}, pulumi.DependsOn([]pulumi.Resource{
			koyeb_app.My - app,
		}))
		if err != nil {
			return err
		}
		return nil
	})
}
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.koyeb.KoyebService;
import com.pulumi.koyeb.KoyebServiceArgs;
import com.pulumi.koyeb.inputs.KoyebServiceDefinitionArgs;
import com.pulumi.koyeb.inputs.KoyebServiceDefinitionInstanceTypesArgs;
import com.pulumi.koyeb.inputs.KoyebServiceDefinitionScalingsArgs;
import com.pulumi.koyeb.inputs.KoyebServiceDefinitionDockerArgs;
import com.pulumi.resources.CustomResourceOptions;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;

public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }

    public static void stack(Context ctx) {
        var my_service = new KoyebService("my-service", KoyebServiceArgs.builder()        
            .appName(koyeb_app.my_app().name())
            .definition(KoyebServiceDefinitionArgs.builder()
                .name("my-service")
                .instanceTypes(KoyebServiceDefinitionInstanceTypesArgs.builder()
                    .type("micro")
                    .build())
                .ports(KoyebServiceDefinitionPortArgs.builder()
                    .port(3000)
                    .protocol("http")
                    .build())
                .scalings(KoyebServiceDefinitionScalingsArgs.builder()
                    .min(1)
                    .max(1)
                    .build())
                .envs(KoyebServiceDefinitionEnvArgs.builder()
                    .key("FOO")
                    .value("BAR")
                    .build())
                .routes(KoyebServiceDefinitionRouteArgs.builder()
                    .path("/")
                    .port(3000)
                    .build())
                .regions("par")
                .docker(KoyebServiceDefinitionDockerArgs.builder()
                    .image("koyeb/demo")
                    .build())
                .build())
            .build(), CustomResourceOptions.builder()
                .dependsOn(koyeb_app.my-app())
                .build());

    }
}
import pulumi
import pulumi_koyeb as koyeb

my_service = koyeb.KoyebService("my-service",
    app_name=koyeb_app["my_app"]["name"],
    definition=koyeb.KoyebServiceDefinitionArgs(
        name="my-service",
        instance_types=koyeb.KoyebServiceDefinitionInstanceTypesArgs(
            type="micro",
        ),
        ports=[koyeb.KoyebServiceDefinitionPortArgs(
            port=3000,
            protocol="http",
        )],
        scalings=koyeb.KoyebServiceDefinitionScalingsArgs(
            min=1,
            max=1,
        ),
        envs=[koyeb.KoyebServiceDefinitionEnvArgs(
            key="FOO",
            value="BAR",
        )],
        routes=[koyeb.KoyebServiceDefinitionRouteArgs(
            path="/",
            port=3000,
        )],
        regions=["par"],
        docker=koyeb.KoyebServiceDefinitionDockerArgs(
            image="koyeb/demo",
        ),
    ),
    opts=pulumi.ResourceOptions(depends_on=[koyeb_app["my-app"]]))
import * as pulumi from "@pulumi/pulumi";
import * as pulumi_koyeb from "@koyeb/pulumi-koyeb";

const my_service = new koyeb.KoyebService("my-service", {
    appName: koyeb_app.my_app.name,
    definition: {
        name: "my-service",
        instanceTypes: {
            type: "micro",
        },
        ports: [{
            port: 3000,
            protocol: "http",
        }],
        scalings: {
            min: 1,
            max: 1,
        },
        envs: [{
            key: "FOO",
            value: "BAR",
        }],
        routes: [{
            path: "/",
            port: 3000,
        }],
        regions: ["par"],
        docker: {
            image: "koyeb/demo",
        },
    },
}, {
    dependsOn: [koyeb_app["my-app"]],
});
resources:
  my-service:
    type: koyeb:KoyebService
    properties:
      appName: ${koyeb_app.my_app.name}
      definition:
        name: my-service
        instanceTypes:
          type: micro
        ports:
          - port: 3000
            protocol: http
        scalings:
          min: 1
          max: 1
        envs:
          - key: FOO
            value: BAR
        routes:
          - path: /
            port: 3000
        regions:
          - par
        docker:
          image: koyeb/demo
    options:
      dependson:
        - ${koyeb_app"my-app"[%!s(MISSING)]}

Create KoyebService Resource

new KoyebService(name: string, args: KoyebServiceArgs, opts?: CustomResourceOptions);
@overload
def KoyebService(resource_name: str,
                 opts: Optional[ResourceOptions] = None,
                 app_name: Optional[str] = None,
                 definition: Optional[KoyebServiceDefinitionArgs] = None,
                 messages: Optional[str] = None)
@overload
def KoyebService(resource_name: str,
                 args: KoyebServiceArgs,
                 opts: Optional[ResourceOptions] = None)
func NewKoyebService(ctx *Context, name string, args KoyebServiceArgs, opts ...ResourceOption) (*KoyebService, error)
public KoyebService(string name, KoyebServiceArgs args, CustomResourceOptions? opts = null)
public KoyebService(String name, KoyebServiceArgs args)
public KoyebService(String name, KoyebServiceArgs args, CustomResourceOptions options)
type: koyeb:KoyebService
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args KoyebServiceArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name str
The unique name of the resource.
args KoyebServiceArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name string
The unique name of the resource.
args KoyebServiceArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args KoyebServiceArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args KoyebServiceArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

KoyebService Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

The KoyebService resource accepts the following input properties:

AppName string

The app name the service is assigned to

Definition KoyebServiceDefinitionArgs

The service deployment definition

Messages string

The status messages of the service

AppName string

The app name the service is assigned to

Definition KoyebServiceDefinitionArgs

The service deployment definition

Messages string

The status messages of the service

appName String

The app name the service is assigned to

definition KoyebServiceDefinitionArgs

The service deployment definition

messages String

The status messages of the service

appName string

The app name the service is assigned to

definition KoyebServiceDefinitionArgs

The service deployment definition

messages string

The status messages of the service

app_name str

The app name the service is assigned to

definition KoyebServiceDefinitionArgs

The service deployment definition

messages str

The status messages of the service

appName String

The app name the service is assigned to

definition Property Map

The service deployment definition

messages String

The status messages of the service

Outputs

All input properties are implicitly available as output properties. Additionally, the KoyebService resource produces the following output properties:

ActiveDeployment string

The service active deployment ID

AppId string

The app id the service is assigned to

CreatedAt string

The date and time of when the service was created

Id string

The provider-assigned unique ID for this managed resource.

LatestDeployment string

The service latest deployment ID

Name string

The service name

OrganizationId string

The organization ID owning the service

PausedAt string

The date and time of when the service was last updated

ResumedAt string

The date and time of when the service was last updated

Status string

The status of the service

TerminatedAt string

The date and time of when the service was last updated

UpdatedAt string

The date and time of when the service was last updated

Version string

The version of the service

ActiveDeployment string

The service active deployment ID

AppId string

The app id the service is assigned to

CreatedAt string

The date and time of when the service was created

Id string

The provider-assigned unique ID for this managed resource.

LatestDeployment string

The service latest deployment ID

Name string

The service name

OrganizationId string

The organization ID owning the service

PausedAt string

The date and time of when the service was last updated

ResumedAt string

The date and time of when the service was last updated

Status string

The status of the service

TerminatedAt string

The date and time of when the service was last updated

UpdatedAt string

The date and time of when the service was last updated

Version string

The version of the service

activeDeployment String

The service active deployment ID

appId String

The app id the service is assigned to

createdAt String

The date and time of when the service was created

id String

The provider-assigned unique ID for this managed resource.

latestDeployment String

The service latest deployment ID

name String

The service name

organizationId String

The organization ID owning the service

pausedAt String

The date and time of when the service was last updated

resumedAt String

The date and time of when the service was last updated

status String

The status of the service

terminatedAt String

The date and time of when the service was last updated

updatedAt String

The date and time of when the service was last updated

version String

The version of the service

activeDeployment string

The service active deployment ID

appId string

The app id the service is assigned to

createdAt string

The date and time of when the service was created

id string

The provider-assigned unique ID for this managed resource.

latestDeployment string

The service latest deployment ID

name string

The service name

organizationId string

The organization ID owning the service

pausedAt string

The date and time of when the service was last updated

resumedAt string

The date and time of when the service was last updated

status string

The status of the service

terminatedAt string

The date and time of when the service was last updated

updatedAt string

The date and time of when the service was last updated

version string

The version of the service

active_deployment str

The service active deployment ID

app_id str

The app id the service is assigned to

created_at str

The date and time of when the service was created

id str

The provider-assigned unique ID for this managed resource.

latest_deployment str

The service latest deployment ID

name str

The service name

organization_id str

The organization ID owning the service

paused_at str

The date and time of when the service was last updated

resumed_at str

The date and time of when the service was last updated

status str

The status of the service

terminated_at str

The date and time of when the service was last updated

updated_at str

The date and time of when the service was last updated

version str

The version of the service

activeDeployment String

The service active deployment ID

appId String

The app id the service is assigned to

createdAt String

The date and time of when the service was created

id String

The provider-assigned unique ID for this managed resource.

latestDeployment String

The service latest deployment ID

name String

The service name

organizationId String

The organization ID owning the service

pausedAt String

The date and time of when the service was last updated

resumedAt String

The date and time of when the service was last updated

status String

The status of the service

terminatedAt String

The date and time of when the service was last updated

updatedAt String

The date and time of when the service was last updated

version String

The version of the service

Look up Existing KoyebService Resource

Get an existing KoyebService resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: KoyebServiceState, opts?: CustomResourceOptions): KoyebService
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        active_deployment: Optional[str] = None,
        app_id: Optional[str] = None,
        app_name: Optional[str] = None,
        created_at: Optional[str] = None,
        definition: Optional[KoyebServiceDefinitionArgs] = None,
        latest_deployment: Optional[str] = None,
        messages: Optional[str] = None,
        name: Optional[str] = None,
        organization_id: Optional[str] = None,
        paused_at: Optional[str] = None,
        resumed_at: Optional[str] = None,
        status: Optional[str] = None,
        terminated_at: Optional[str] = None,
        updated_at: Optional[str] = None,
        version: Optional[str] = None) -> KoyebService
func GetKoyebService(ctx *Context, name string, id IDInput, state *KoyebServiceState, opts ...ResourceOption) (*KoyebService, error)
public static KoyebService Get(string name, Input<string> id, KoyebServiceState? state, CustomResourceOptions? opts = null)
public static KoyebService get(String name, Output<String> id, KoyebServiceState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name
The unique name of the resulting resource.
id
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
ActiveDeployment string

The service active deployment ID

AppId string

The app id the service is assigned to

AppName string

The app name the service is assigned to

CreatedAt string

The date and time of when the service was created

Definition KoyebServiceDefinitionArgs

The service deployment definition

LatestDeployment string

The service latest deployment ID

Messages string

The status messages of the service

Name string

The service name

OrganizationId string

The organization ID owning the service

PausedAt string

The date and time of when the service was last updated

ResumedAt string

The date and time of when the service was last updated

Status string

The status of the service

TerminatedAt string

The date and time of when the service was last updated

UpdatedAt string

The date and time of when the service was last updated

Version string

The version of the service

ActiveDeployment string

The service active deployment ID

AppId string

The app id the service is assigned to

AppName string

The app name the service is assigned to

CreatedAt string

The date and time of when the service was created

Definition KoyebServiceDefinitionArgs

The service deployment definition

LatestDeployment string

The service latest deployment ID

Messages string

The status messages of the service

Name string

The service name

OrganizationId string

The organization ID owning the service

PausedAt string

The date and time of when the service was last updated

ResumedAt string

The date and time of when the service was last updated

Status string

The status of the service

TerminatedAt string

The date and time of when the service was last updated

UpdatedAt string

The date and time of when the service was last updated

Version string

The version of the service

activeDeployment String

The service active deployment ID

appId String

The app id the service is assigned to

appName String

The app name the service is assigned to

createdAt String

The date and time of when the service was created

definition KoyebServiceDefinitionArgs

The service deployment definition

latestDeployment String

The service latest deployment ID

messages String

The status messages of the service

name String

The service name

organizationId String

The organization ID owning the service

pausedAt String

The date and time of when the service was last updated

resumedAt String

The date and time of when the service was last updated

status String

The status of the service

terminatedAt String

The date and time of when the service was last updated

updatedAt String

The date and time of when the service was last updated

version String

The version of the service

activeDeployment string

The service active deployment ID

appId string

The app id the service is assigned to

appName string

The app name the service is assigned to

createdAt string

The date and time of when the service was created

definition KoyebServiceDefinitionArgs

The service deployment definition

latestDeployment string

The service latest deployment ID

messages string

The status messages of the service

name string

The service name

organizationId string

The organization ID owning the service

pausedAt string

The date and time of when the service was last updated

resumedAt string

The date and time of when the service was last updated

status string

The status of the service

terminatedAt string

The date and time of when the service was last updated

updatedAt string

The date and time of when the service was last updated

version string

The version of the service

active_deployment str

The service active deployment ID

app_id str

The app id the service is assigned to

app_name str

The app name the service is assigned to

created_at str

The date and time of when the service was created

definition KoyebServiceDefinitionArgs

The service deployment definition

latest_deployment str

The service latest deployment ID

messages str

The status messages of the service

name str

The service name

organization_id str

The organization ID owning the service

paused_at str

The date and time of when the service was last updated

resumed_at str

The date and time of when the service was last updated

status str

The status of the service

terminated_at str

The date and time of when the service was last updated

updated_at str

The date and time of when the service was last updated

version str

The version of the service

activeDeployment String

The service active deployment ID

appId String

The app id the service is assigned to

appName String

The app name the service is assigned to

createdAt String

The date and time of when the service was created

definition Property Map

The service deployment definition

latestDeployment String

The service latest deployment ID

messages String

The status messages of the service

name String

The service name

organizationId String

The organization ID owning the service

pausedAt String

The date and time of when the service was last updated

resumedAt String

The date and time of when the service was last updated

status String

The status of the service

terminatedAt String

The date and time of when the service was last updated

updatedAt String

The date and time of when the service was last updated

version String

The version of the service

Supporting Types

KoyebServiceDefinition

KoyebServiceDefinitionDocker

Image string
Args List<string>
Command string
ImageRegistySecret string
Image string
Args []string
Command string
ImageRegistySecret string
image String
args List<String>
command String
imageRegistySecret String
image string
args string[]
command string
imageRegistySecret string
image str
args Sequence[str]
command str
image_registy_secret str
image String
args List<String>
command String
imageRegistySecret String

KoyebServiceDefinitionEnv

Key string
Secret string
Value string
Key string
Secret string
Value string
key String
secret String
value String
key string
secret string
value string
key str
secret str
value str
key String
secret String
value String

KoyebServiceDefinitionGit

branch String
repository String
buildCommand String
noDeployOnPush Boolean
runCommand String
branch string
repository string
buildCommand string
noDeployOnPush boolean
runCommand string
branch String
repository String
buildCommand String
noDeployOnPush Boolean
runCommand String

KoyebServiceDefinitionInstanceTypes

Type string
Type string
type String
type string
type str
type String

KoyebServiceDefinitionPort

Port int
Protocol string
Port int
Protocol string
port Integer
protocol String
port number
protocol string
port int
protocol str
port Number
protocol String

KoyebServiceDefinitionRoute

Path string
Port int
Path string
Port int
path String
port Integer
path string
port number
path str
port int
path String
port Number

KoyebServiceDefinitionScalings

Max int
Min int
Max int
Min int
max Integer
min Integer
max number
min number
max int
min int
max Number
min Number

Package Details

Repository
koyeb koyeb/pulumi-koyeb
License
Apache-2.0
Notes

This Pulumi package is based on the koyeb Terraform Provider.