npm package to manage shakudo resources.
import { ShakudoSecretsManager } from 'tsshakudo';
const main = async () => {
// Initialize the secrets manager with the default namespace and in-cluster config
const secretsManager = new ShakudoSecretsManager('hyperplane-jhub');
// Example data for creating a secret
const secretData = { key1: 'value1', key2: 'value2' };
// Create a secret
const createdSecret = await secretsManager.createSecret('test-secret', secretData);
console.log('Created Secret:', createdSecret);
// Get the created secret
const fetchedSecret = await secretsManager.getSecret('test-secret');
console.log('Fetched Secret:', fetchedSecret);
// List all secrets in the namespace
const secretsList = await secretsManager.listSecrets();
console.log('List of Secrets:', secretsList);
// Patch the secret with new data
const patchData = { key1: 'new-value1', key3: 'value3' };
const patchedSecret = await secretsManager.patchSecret('test-secret', patchData);
console.log('Patched Secret:', patchedSecret);
// Delete the secret
const deleteResponse = await secretsManager.deleteSecret('test-secret');
console.log('Deleted Secret Response:', deleteResponse);
};
main().catch((error) => {
console.error('Error:', error);
});