fix(secrets): split Solana API keys into separate SOPS file

- Remove helius/jupiter placeholders from trading-secrets.yaml
- Create new solana-api-keys.yaml with helius-api-key and jupiter-api-key
- Update kustomization.yaml to include solana-api-keys.yaml

Convention: each secret group gets its own SOPS-encrypted file
instead of adding new keys to an already encrypted file.
This commit is contained in:
Sirius Devops 2026-05-27 04:35:47 +00:00
parent 0768af1a31
commit c7731aeec0
3 changed files with 48 additions and 16 deletions

View file

@ -4,3 +4,4 @@ kind: Kustomization
resources:
- trading-secrets.yaml
- execute-service-jwt-secret.yaml
- solana-api-keys.yaml

View file

@ -0,0 +1,29 @@
apiVersion: v1
kind: Secret
metadata:
name: solana-api-keys
namespace: customer1
type: Opaque
stringData:
helius-api-key: ENC[AES256_GCM,data:72/f2NS9yBS2125QpiTxGBz6K8m7iHx9,iv:0xQ4xCKji6NNWJUfuiiEvb8IoTJxXGhmoZJo2MDVaKw=,tag:m8JAjswKIjsGjeNU0G4zNw==,type:str]
jupiter-api-key: ENC[AES256_GCM,data:nBQm47bEKb8jY8+IBgTAUK0pTUz8frZ+qw==,iv:OFr/6wuKvuXL7jvr2jdlJpWYaU8vciHn5fiIQ5vNCCI=,tag:kykbpOmUg91Miv3Rf/ufsw==,type:str]
sops:
kms: []
gcp_kms: []
azure_kv: []
hc_vault: []
age:
- recipient: age1uuxf066xuuqgvjppxfcmqkwfcufnwp3wcwnl9h20g9k4l8nkw9jsaungf7
enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBYSVFNbC9kcEExbis3VFE1
d2NPT3lCL2VQbnRnVlNNc3VTanBMZ3ZTbkVBCnNXUCtwUUlxcW94VGxkZ2ZYOTJQ
YlFHelA1Zzl2U0RtRmtCaTFiWE9VNzQKLS0tIFI3T0g5d0dtWStSOFRobzlTeU1M
bWdRTk9ib2dkMjU2eDZMZzRaTHFSUzQKRnlFkdQudt9iTKzoGvCAgumKSub9Twko
cCc5JQcY4oFOR6huvdppGjsOt8X5jOX/PZrSh1cNikS1XkuD6MijEw==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2026-05-27T04:35:33Z"
mac: ENC[AES256_GCM,data:N+uI8Fr3ydaGM6pdZRC8ML7BlnEjoYj4Wr+cYCL613OPCzK4H6uZB94gf6MNW4IBuAA3qV3Ug6Ynj/edZCYUTdCTx/Ol5qii26DhPrRMzgn0ipvGZ33OhAO+YCbNa0Wy7PZytn+Lchu5klvbqXp7QSXt+UjKvYZLXIdy13Iw8So=,iv:Nt8uA1zRN5N0njgisVJ0q6tWNYmx/tTobQ2c9M/CCp4=,tag:0Uo7g7AHUzPGvKc8HgsIZg==,type:str]
pgp: []
encrypted_regex: ^(data|stringData)$
version: 3.9.0

View file

@ -5,26 +5,28 @@ metadata:
namespace: customer1
type: Opaque
stringData:
#ENC[AES256_GCM,data:X6HnX4CXbHydreDklg2LsCfBN1i1dp7HFifHR4rN2A581dEbYw==,iv:5MocUK+2zYn1qxhayaVnwVR+5FLLdJRKo9uBvW6RiTE=,tag:v13dWH9t/K8Whbs9EXcgnQ==,type:comment]
news-api-key: ENC[AES256_GCM,data:Ren1WNxCGBcaV49M+W5Gl3FjfZJh3o/X,iv:Ly1v+YdGodfeQHLkYIJra+2+qqa06wAcu2RGv6cueRE=,tag:IuWIJB1mzipgmnP5rD2c1A==,type:str]
market-data-api-key: ENC[AES256_GCM,data:2x2vPbOu/T+4albtkeRrktBffX1i06vXQmnn31685g==,iv:LqfpNmK6d9tt2MeaaozI+PVim8KUK8TflEalSxptfjM=,tag:Tan91JSeh5aUhGiExns4PQ==,type:str]
#ENC[AES256_GCM,data:jVRQi+JQNlDUQ+bCe189YrOcsXjYYTGF,iv:SnCbB2w1jnPnXqWGPEivK/b9bWnYA6qL1Xkx6n8XzQ8=,tag:SYJbW0Aea/evPgvGNCqw9Q==,type:comment]
service-auth-token: ENC[AES256_GCM,data:Xrqq82eI5obC86s+FJpi4DbX9+hDdTlYdmfL6DlW,iv:lDhfIuT+On7W6Xk36FKw7fE7zBheRPaMZwQBn7DF5qc=,tag:CdE0OWzQ9OLkSsDL8gq9gA==,type:str]
# TODO: replace placeholders and run `sops -e --in-place trading-secrets.yaml`
helius-api-key: "CHANGE_ME_helius_api_key"
jupiter-api-key: "CHANGE_ME_jupiter_api_key"
#ENC[AES256_GCM,data:dyXLfea8iq2yHlZep1eNdTLJ32FJ1njYaZFgwHTGSSpGpBu+mg==,iv:Ag6MtzvQH71KIBO0EXYDXYIlzi9Tkrzbv5yAnGeTWzI=,tag:5CbRxFAJhz3ygqHkYfQ3aA==,type:comment]
news-api-key: ENC[AES256_GCM,data:oPEYLf8a8qGHcOqpJf4nNEJ0thnC92je,iv:L5h71TK3+bCzEfG+mWJWtAJElUAYax8j1wufPRJwz98=,tag:jhcLILef6NI0NaHYnVIDcA==,type:str]
market-data-api-key: ENC[AES256_GCM,data:dIiQPEBaBVNrxSu15WL3+eq56NKmhjxN9VfIBeXyqw==,iv:QTzb0Ivyg1pZxp5lEW+Qf1+If8M8Qof2BfSwZq/O8AU=,tag:K5Do7SXs0gpaJPqakntoSg==,type:str]
#ENC[AES256_GCM,data:yimW2HNmOjOVEBNcfLZNl+TDx+mmTd7c,iv:wb5QUD9X3+m/phr4x/TGqnTG02Fl1jqJuPdp0YW9Jcw=,tag:fXpKSc0X3ZyMBGwEvUBnMw==,type:comment]
service-auth-token: ENC[AES256_GCM,data:JunmMQGPSWD0PRVN4PbGcCKaTTeZfl5US3LsS12L,iv:+qJjWstEiqarjVArzIcu1fUpp8ySXMf84pHepyK4XWI=,tag:hb+CSxl8j4zwxFrqn1TlPQ==,type:str]
sops:
kms: []
gcp_kms: []
azure_kv: []
hc_vault: []
age:
- recipient: age1uuxf066xuuqgvjppxfcmqkwfcufnwp3wcwnl9h20g9k4l8nkw9jsaungf7
enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBOWHFUcm9aNFlzRXk3bmtY
b3hMRC85a2x3R1lIVmZoTk4xT1JtMDF0MEZFCmhjRGdUYWJpVnFkMTZpTVg4U01Z
c0trekthejd6QUk3REZ2Rms0Y2hyOFUKLS0tIExseng1M0RNU3E2d1NXNlJQVGdh
andDeDdxM2pjU05GL0pKdXIwUzc2M00KBfnTHcj5QMYGlQLRVO34sbtPsjRz37ZJ
LO1q7fngycQGm0oNgZAZnxQNMArlNIUduH3Y8M365XushwPc9BHuQw==
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSA2Mmt5alJSa1Z4dWF3anpU
RktDZTdQcExCeTV4THcwWUFDbmlKaWxqTGp3CmNIQVlmMENNem9leHJZdGJNbys0
RG1aR0w4aExtYStXU0YwRmVoRDhib0UKLS0tIHBGK0phRXpGNXF4OVM5TTlxcnRE
VXY5R3M4aVp2RnRqS25abThBdWJxZUUKRh/BANhV9to++utXiIVnh7KavNfwwhTs
rSyLXlRVHAUMghQTPB91RAk7QmozpRUWLlf09TZVRtdyNTwlCzSwYQ==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2026-05-22T02:10:53Z"
mac: ENC[AES256_GCM,data:xpMKA/p5pEtYSjOZFwznuKO2eUE+xXNzV8Yggxt0IgzLiNSiGuHvFRaLihrgdT6/HVVEYxAbYjtnDHBY0+mVulk+p9TRUO7Z3CtlzEKfW23lpkExeN0CblWwEIh+xL86ip++BAGsI7n2LSgjVUgqInmYgi3oYAyv9wwc0+ajZzo=,iv:noqbjzz0nEUPQ/3p0rK3dHyKthz4Hm3w0GLRlya3zag=,tag:rFvLcn7QBApQs+qPrjRvKw==,type:str]
lastmodified: "2026-05-27T04:35:21Z"
mac: ENC[AES256_GCM,data:ClIlomZn/x9hILztsNtlxKb4sIYHDTL0gXJ6d7Yed7BUrIy5sUZCzaE4cB40sq3hxS2p3XCNQ4wr2hzEl549r4zUn0gC69U/lJcSQkIzI6qD4DlksCweFLmsPbU9XiActkmw9MKFRN6GVufCepCXnWqZOKGAps8br3wWConqv8w=,iv:KpldaQ4K6LMmLr1WpZci96VzYACMZwuKopomHXr7EsM=,tag:BL2Fl0le7axNYwa/F5odJw==,type:str]
pgp: []
encrypted_regex: ^(data|stringData)$
version: 3.11.0
version: 3.9.0