Я создал простой API-тест для публикации документа. Конечная точка должна быть аутентифицирована с использованием доступа AWS и секретного ключа. Вот мой тестовый код API.
public static async Task<HttpResponseMessage> PostRequest(string requestUrl, dynamic json = null, byte[] file = null)
{
var credentials = new ImmutableCredentials(accessKey, secretKey, null);
var url= url.SetQueryParams(json);
var httpContent = new ByteArrayContent(file );
var response = await client.PostAsync(
postUrl,
httpContent,
regionName: regionName,
serviceName: serviceName,
credentials: credentials);
return response;
}
В настоящее время эти учетные данные жестко запрограммированы (я знаю, что это не здорово). В моем конвейере CI я использую CircleCi и храню свои ключи AWS в разделе переменных среды. Теперь у меня вопрос: как я могу получить доступ и реализовать эти переменные в моем тестовом коде?
Идея, которую я пытаюсь сделать, заключается в том, что я не хочу жестко кодировать мои AWS ключи в управлении исходным кодом.