import * as ecs from 'aws-cdk-lib/aws-ecs';
import { Construct } from 'constructs';
import * as secretsmanager from 'aws-cdk-lib/aws-secretsmanager';

// Retrieve the secret from AWS Secrets Manager
export const rdsSecret = (scope: Construct, accountStage: string) => {
  if (accountStage === 'staging') {
    return secretsmanager.Secret.fromSecretAttributes(scope, 'studio-api-rds-password', {
      secretCompleteArn: 'arn:aws:secretsmanager:us-east-2:590183763515:secret:studio-api-rds-password-7iN1ZQ',
    });
  }
  if (accountStage === 'prod') {
    return secretsmanager.Secret.fromSecretAttributes(scope, 'studio-api-rds-password', {
      secretCompleteArn: 'arn:aws:secretsmanager:us-east-2:734185074900:secret:studio-api-rds-password-A36XEH',
    });
  }
  return secretsmanager.Secret.fromSecretAttributes(scope, 'studio-api-rds-password', {
    secretCompleteArn: 'arn:aws:secretsmanager:us-east-2:734185074900:secret:studio-api-rds-password-A36XEH',
  });
};

export const rdsSecrets = (scope: Construct, accountStage: string) => {
  const secret = rdsSecret(scope, accountStage);
  let secrets = {
    DATABASE_URL_NO_PASS: ecs.Secret.fromSecretsManager(secret, 'DATABASE_URL_NO_PASS'),
    DATABASE_PASSWORD: ecs.Secret.fromSecretsManager(secret, 'DATABASE_PASSWORD'),
  } as { [key: string]: ecs.Secret };

  return secrets;
};
