export async function run()

in src/run.ts [150:195]


export async function run() {
   checkClusterContext()

   // Create kubeconfig and load values from 'KUBECONFIG' environment variable
   const kc: KubeConfig = new KubeConfig()
   core.debug(`loading kubeconfig from defaults...`)
   kc.loadFromDefault()

   const api: CoreV1Api = kc.makeApiClient(CoreV1Api)

   // The name of the new secret
   const secretName: string = core.getInput('secret-name', {required: true})

   // The namespace in which to place the secret
   const namespace: string = core.getInput('namespace') || 'default'

   // Delete if exists
   let deleteSecretResponse
   try {
      let deleteRequest: CoreV1ApiDeleteNamespacedSecretRequest = {
         name: secretName,
         namespace: namespace
      }
      deleteSecretResponse = await api.deleteNamespacedSecret(deleteRequest)
   } catch ({response}) {
      core.warning(
         `Failed to delete secret with statusCode: ${response?.statusCode}`
      )
      core.warning(response?.body?.metadata)
   }
   core.info('Deleting secret:')
   core.info(JSON.stringify(deleteSecretResponse?.response?.body, undefined, 2))

   const secret = await buildSecret(secretName, namespace)
   core.info('Creating secret')
   try {
      let secretRequest: CoreV1ApiCreateNamespacedSecretRequest = {
         namespace: namespace,
         body: secret
      }
      await api.createNamespacedSecret(secretRequest)
   } catch (err) {
      core.info(JSON.stringify(err))
      core.setFailed(err.message)
   }
}