{"record":{"id":"3e3c5e1d3dc2b4ff","repo":"wasmerio/wasmer","slug":"cannot-create-secret-as-it-already-exists-us","errorCode":null,"errorMessage":"Cannot create secret '{}' as it already exists. Use the `update` command instead.","messagePattern":"Cannot create secret '(.+?)' as it already exists\\. Use the `update` command instead\\.","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"lib/cli/src/commands/app/secrets/create.rs","lineNumber":105,"sourceCode":"\n    /// Given a list of secrets, checks if the given secrets already exist for the given app and\n    /// returns a list of secrets that must be upserted.\n    async fn filter_secrets(\n        &self,\n        client: &WasmerClient,\n        app_id: &str,\n        secrets: Vec<Secret>,\n    ) -> anyhow::Result<Vec<Secret>> {\n        let names = secrets.iter().map(|s| &s.name);\n        let app_secrets =\n            wasmer_backend_api::query::get_all_app_secrets_filtered(client, app_id, names).await?;\n        let mut sset = HashSet::<String>::from_iter(app_secrets.iter().map(|s| s.name.clone()));\n        let mut ret = HashMap::new();\n\n        for secret in secrets {\n            if sset.contains(&secret.name) {\n                if self.non_interactive {\n                    anyhow::bail!(\n                        \"Cannot create secret '{}' as it already exists. Use the `update` command instead.\",\n                        secret.name.bold()\n                    );\n                } else {\n                    if ret.contains_key(&secret.name) {\n                        eprintln!(\n                            \"Secret '{}' appears twice in the input file.\",\n                            secret.name.bold()\n                        );\n                    } else {\n                        eprintln!(\n                            \"Secret '{}' already exists for the selected app.\",\n                            secret.name.bold()\n                        );\n                    }\n                    let theme = ColorfulTheme::default();\n                    let res = dialoguer::Confirm::with_theme(&theme)\n                        .with_prompt(\"Do you want to update it?\")","sourceCodeStart":87,"sourceCodeEnd":123,"githubUrl":"https://github.com/wasmerio/wasmer/blob/8c4b9ee9d33fb2068863fbb3d328683e7e6ff7f5/lib/cli/src/commands/app/secrets/create.rs#L87-L123","documentation":"Error \"Cannot create secret '{}' as it already exists. Use the `update` command instead.\" thrown in wasmerio/wasmer.","triggerScenarios":"Thrown at lib/cli/src/commands/app/secrets/create.rs:105 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"8c4b9ee9d33fb2068863fbb3d328683e7e6ff7f5","analyzedAt":"2026-09-01T23:06:31.009Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-09T06:17:21.866Z"}