@Override
  public AppCredentials getAppCredentials(String keyName, String secretName) throws IOException {
    String keyValue = System.getenv(keyName);
    if (keyValue == null) {
      // TODO this should be a runtime exception
      throw new IOException("Key value " + keyName + " not set as environment variable");
    }
    String secretValue = System.getenv(secretName);
    if (secretValue == null) {
      // TODO this should be a runtime exception
      throw new IOException("Key value " + secretName + " not set as environment variable");
    }

    return new AppCredentials(keyValue, secretValue);
  }
Implements an {@link AppCredentialStore} that sources secrets from environment variables.
extensions/cloud/portability-cloud-local/src/main/java/org/datatransferproject/cloud/local/LocalAppCredentialStore.java