protected override void ProcessRecord() { if (this.VM.OSProfile == null) { this.VM.OSProfile = new OSProfile(); } if (this.VM.OSProfile.Secrets == null) { this.VM.OSProfile.Secrets = new List <VaultSecretGroup>(); } int i = 0; for (; i <= this.VM.OSProfile.Secrets.Count; i++) { if (i == this.VM.OSProfile.Secrets.Count) { var sourceVault = new SourceVaultReference { ReferenceUri = this.SourceVaultId }; var vaultCertificates = new List <VaultCertificate> { new VaultCertificate() { CertificateStore = this.CertificateStore, CertificateUrl = this.CertificateUrl, } }; this.VM.OSProfile.Secrets.Add( new VaultSecretGroup() { SourceVault = sourceVault, VaultCertificates = vaultCertificates, }); break; } if (this.VM.OSProfile.Secrets[i].SourceVault != null && this.VM.OSProfile.Secrets[i].SourceVault.ReferenceUri.Equals(this.SourceVaultId)) { if (this.VM.OSProfile.Secrets[i].VaultCertificates == null) { this.VM.OSProfile.Secrets[i].VaultCertificates = new List <VaultCertificate>(); } this.VM.OSProfile.Secrets[i].VaultCertificates.Add( new VaultCertificate() { CertificateStore = this.CertificateStore, CertificateUrl = this.CertificateUrl, }); break; } } WriteObject(this.VM); }
public void SetCertificateInfo(VirtualMachine vm) { SourceVaultReference vault = GetDefaultSourceVault(); VaultCertificate vmCert = GetDefaultVaultCert(); var secretGroup = new VaultSecretGroup() { SourceVault = vault, VaultCertificates = new List <VaultCertificate>() { vmCert } }; vm.OSProfile.Secrets = new List <VaultSecretGroup>() { secretGroup }; }