---
title: karmadactl promote
---

Promote resources from legacy clusters to Karmada control plane

### Synopsis

Promote resources from legacy clusters to the Karmada control plane. Requires the cluster to have been joined or registered.

 If the resource already exists in the Karmada control plane, please edit PropagationPolicy and OverridePolicy to propagate it.

```
karmadactl promote <RESOURCE_TYPE> <RESOURCE_NAME> -n <NAME_SPACE> -C <CLUSTER_NAME>
```

### Examples

```
  # Promote deployment(default/nginx) from cluster1 to Karmada
  karmadactl promote deployment nginx -n default -C cluster1
  
  # Promote deployment(default/nginx) with gvk from cluster1 to Karmada
  karmadactl promote deployment.v1.apps nginx -n default -C cluster1
  
  # Dumps the artifacts but does not deploy them to Karmada, same as 'dry run'
  karmadactl promote deployment nginx -n default -C cluster1 -o yaml|json
  
  # Promote secret(default/default-token) from cluster1 to Karmada
  karmadactl promote secret default-token -n default -C cluster1
  
  # Support to use '--dependencies=true' or '-d=true' to promote resource with its dependencies automatically, default to false
  karmadactl promote deployment nginx -n default -C cluster1 -d=true
  
  # Support to use '--cluster-kubeconfig' to specify the configuration of member cluster
  karmadactl promote deployment nginx -n default -C cluster1 --cluster-kubeconfig=<CLUSTER_KUBECONFIG_PATH>
  
  # Support to use '--cluster-kubeconfig' and '--cluster-context' to specify the configuration of member cluster
  karmadactl promote deployment nginx -n default -C cluster1 --cluster-kubeconfig=<CLUSTER_KUBECONFIG_PATH> --cluster-context=<CLUSTER_CONTEXT>
```

### Options

```
      --auto-create-policy          Automatically create a PropagationPolicy for namespace-scoped resources or create a ClusterPropagationPolicy for cluster-scoped resources. (default true)
  -C, --cluster string              Name of the legacy cluster (e.g. -C=member1)
      --cluster-context string      Context name of legacy cluster in kubeconfig. Only works when there are multiple contexts in the kubeconfig.
      --cluster-kubeconfig string   Path of the legacy cluster's kubeconfig.
  -d, --dependencies                Promote resource with its dependencies automatically, default to false
      --dry-run                     Run the command in dry-run mode, without making any server requests.
  -h, --help                        help for promote
      --karmada-context string      The name of the kubeconfig context to use
      --kubeconfig string           Path to the kubeconfig file to use for CLI requests.
  -n, --namespace string            If present, the namespace scope for this CLI request.
  -o, --output string               Output format. One of: json|yaml
      --policy-name string          The name of the PropagationPolicy(or ClusterPropagationPolicy) that is automatically created after promotion. If not specified, the name will be the resource name with a hash suffix that is generated by resource metadata.
```

### Options inherited from parent commands

```
      --add-dir-header                   If true, adds the file directory to the header of the log messages
      --alsologtostderr                  log to standard error as well as files (no effect when -logtostderr=true)
      --log-backtrace-at traceLocation   when logging hits line file:N, emit a stack trace (default :0)
      --log-dir string                   If non-empty, write log files in this directory (no effect when -logtostderr=true)
      --log-file string                  If non-empty, use this log file (no effect when -logtostderr=true)
      --log-file-max-size uint           Defines the maximum size a log file can grow to (no effect when -logtostderr=true). Unit is megabytes. If the value is 0, the maximum file size is unlimited. (default 1800)
      --logtostderr                      log to standard error instead of files (default true)
      --one-output                       If true, only write logs to their native severity level (vs also writing to each lower severity level; no effect when -logtostderr=true)
      --skip-headers                     If true, avoid header prefixes in the log messages
      --skip-log-headers                 If true, avoid headers when opening log files (no effect when -logtostderr=true)
      --stderrthreshold severity         logs at or above this threshold go to stderr when writing to files and stderr (no effect when -logtostderr=true or -alsologtostderr=true) (default 2)
  -v, --v Level                          number for the log level verbosity
      --vmodule moduleSpec               comma-separated list of pattern=N settings for file-filtered logging
```

### SEE ALSO

* [karmadactl](karmadactl.md)	 - karmadactl controls a Kubernetes Cluster Federation.

#### Go Back to [Karmadactl Commands](karmadactl_index.md) Homepage.


###### Auto generated by [spf13/cobra script in Karmada](https://github.com/karmada-io/karmada/tree/master/hack/tools/genkarmadactldocs).