MCPcopy Index your code
hub / github.com/PyGithub/PyGithub / create_secret

Method create_secret

github/Environment.py:164–184  ·  view source on GitHub ↗

:calls: `PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name} `_

(self, secret_name: str, unencrypted_value: str)

Source from the content-addressed store, hash-verified

162 return github.PublicKey.PublicKey(self._requester, headers, data, completed=True)
163
164 def create_secret(self, secret_name: str, unencrypted_value: str) -> Secret:
165 """
166 :calls: `PUT /repos/{owner}/{repo}/environments/{environment_name}/secrets/{secret_name} <https://docs.github.com/en/rest/secrets#get-a-repository-secret>`_
167 """
168 assert isinstance(secret_name, str), secret_name
169 assert isinstance(unencrypted_value, str), unencrypted_value
170 public_key = self.get_public_key()
171 payload = public_key.encrypt(unencrypted_value)
172 put_parameters = {
173 "key_id": public_key.key_id,
174 "encrypted_value": payload,
175 }
176 quoted_secret_name = urllib.parse.quote(secret_name, safe="")
177 url = f"{self.url}/secrets/{quoted_secret_name}"
178 self._requester.requestJsonAndCheck("PUT", url, input=put_parameters)
179 return github.Secret.Secret(
180 self._requester,
181 url=url,
182 attributes={"name": secret_name},
183 completed=False,
184 )
185
186 def get_secrets(self) -> PaginatedList[Secret]:
187 """

Callers

nothing calls this directly

Calls 3

get_public_keyMethod · 0.95
encryptMethod · 0.80
requestJsonAndCheckMethod · 0.80

Tested by

no test coverage detected