Resources

Staroid supports the most essential Kubernetes Resources in the Namespace.

ConfigMap

dependency.staroid.com/export: <name to export>

ConfigMap can add dependency.staroid.com/export label with a name to export. Other Projects can import the ConfigMap with the name.

Example

kind: ConfigMap
apiVersion: v1
metadata:
  name: my-conf
  labels:
    dependency.staroid.com/export: app-conf
data:
  ...

See Dependency for more details.

dependency.staroid.com/import: <name to import>

ConfigMap can add dependency.staroid.com/import label with a name to import. Exported ConfigMap from other Projects will be imported.

Example

kind: ConfigMap
apiVersion: v1
metadata:
  name: imported-conf
  labels:
    dependency.staroid.com/import: app-conf
data:
  ...

See Dependency for more details.

PersistentVolumeClaim

See Storage for more details.

Pod

See Pod for more details

Secret

dependency.staroid.com/export: <name to export>

Secret can add dependency.staroid.com/export label with a name to export. Other Projects can import the Secret with the name.

Example

kind: Secret
apiVersion: v1
metadata:
  name: my-conf
  labels:
    dependency.staroid.com/export: app-conf
type: Opaque
data:
  ...

See Dependency for more details.

dependency.staroid.com/import: <name to import>

Secret can add dependency.staroid.com/import label with a name to import. Exported Secret from other Projects will be imported.

Example

kind: Secret
apiVersion: v1
metadata:
  name: imported-conf
  labels:
    dependency.staroid.com/import: app-conf
type: Opaque
data:
  ...

See Dependency for more details.

Service

spec.type need to be ClusterIP.

NodePort, LoadBalancer, ExternalName are not supported.

Staroid automatically generates ingress configuration for all services and maps subdomain in following convention

p[PORT_NUMBER]-[SERVICE_NAME]--[STAROID_SERVICE_DOMAIN]

For example, port 8000 in service with the name ‘file-manager’ will be accessible through url such as

https://p8000-file-manager--instance1-90.v1.staroid.com

STAROID_SERVICE_DOMAIN can be found in staroid-envs.

service.staroid.com/link: “show”

annotation shows https link to the service on the instance in Kubernetes page.

Example

kind: Service
apiVersion: v1
metadata:
  name: file-manager
  annotations:
    service.staroid.com/link: "show"
spec:
  ports:
  - name: http
    port: 8000
    targetPort: 8000
  selector:
    app: file-manager