saveSecret method
Saves or updates a secret value associated with the team.
Implementation
Future<void> saveSecret({
required String teamId,
required String name,
required String value,
}) async {
if (serverUrl == null || serverUrl!.isEmpty) {
throw StateError('OPENCI_SERVER_URL must be configured to save secrets.');
}
final url = Uri.parse('$serverUrl/teams/$teamId/secrets');
final idToken = await authManager.getIdToken();
final response = await http.post(
url,
headers: {
'Authorization': 'Bearer $idToken',
'Content-Type': 'application/json',
},
body: jsonEncode({'name': name, 'value': value}),
);
if (response.statusCode < 200 || response.statusCode >= 300) {
throw HttpException(
'Failed to save secret: ${response.statusCode} ${response.body}',
);
}
}