Exemplo n.º 1
0
        private static PSParameterValueBase GetAssignmentParameters(KeyValuePair <string, ParameterValueBase> parameterKvp)
        {
            PSParameterValueBase parameter = null;

            if (parameterKvp.Value != null && parameterKvp.Value is ParameterValue)
            {
                // Need to cast as ParameterValue since assignment.Parameters value type is ParameterValueBase.
                var parameterValue = (ParameterValue)parameterKvp.Value;

                parameter = new PSParameterValue {
                    Description = parameterValue.Description, Value = parameterValue.Value
                };
            }
            else if (parameterKvp.Value != null && parameterKvp.Value is SecretReferenceParameterValue)
            {
                var parameterValue = (SecretReferenceParameterValue)parameterKvp.Value;

                var secretReference = new PSSecretValueReference
                {
                    KeyVault = new PSKeyVaultReference {
                        Id = parameterValue.Reference.KeyVault.Id
                    },
                    SecretName    = parameterValue.Reference.SecretName,
                    SecretVersion = parameterValue.Reference.SecretVersion
                };

                parameter = new PSSecretReferenceParameterValue {
                    Reference = secretReference, Description = parameterValue.Description
                };
            }

            return(parameter);
        }
        private static PSParameterValue GetArtifactParameters(KeyValuePair <string, ParameterValue> parameterKvp)
        {
            PSParameterValue parameter = null;

            if (parameterKvp.Value?.Value != null)
            {
                var parameterValue = parameterKvp.Value;
                parameter = new PSParameterValue {
                    Value = parameterValue.Value
                };
            }
            else if (parameterKvp.Value?.Reference != null)
            {
                var parameterValue  = parameterKvp.Value;
                var secretReference = new PSSecretValueReference
                {
                    KeyVault = new PSKeyVaultReference {
                        Id = parameterValue.Reference.KeyVault.Id
                    },
                    SecretName    = parameterValue.Reference.SecretName,
                    SecretVersion = parameterValue.Reference.SecretVersion
                };

                parameter = new PSParameterValue {
                    Reference = secretReference
                };
            }

            return(parameter);
        }