primitive 0.2.61__py3-none-any.whl → 0.2.63__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
primitive/__about__.py CHANGED
@@ -1,4 +1,4 @@
1
1
  # SPDX-FileCopyrightText: 2025-present Dylan Stein <dylan@primitive.tech>
2
2
  #
3
3
  # SPDX-License-Identifier: MIT
4
- __version__ = "0.2.61"
4
+ __version__ = "0.2.63"
primitive/exec/actions.py CHANGED
@@ -69,6 +69,10 @@ class Exec(BaseAction):
69
69
  ssh_client = SSHClient()
70
70
  ssh_client.load_system_host_keys()
71
71
 
72
+ # if a failure case happens where the server is only accepting passwords
73
+ # ensure that `PubkeyAuthentication yes` is set in your ssh config
74
+ # this file is typically located at `/etc/ssh/sshd_config`
75
+
72
76
  ssh_client.connect(
73
77
  hostname=ssh_hostname,
74
78
  username=ssh_username,
@@ -74,7 +74,7 @@ query jobRuns(
74
74
  job_run_query = (
75
75
  job_run_fragment
76
76
  + """
77
- query jobRun($id: GlobalID!) {
77
+ query jobRun($id: ID!) {
78
78
  jobRun(id: $id) {
79
79
  ...JobRunFragment
80
80
  }
@@ -83,7 +83,7 @@ query jobRun($id: GlobalID!) {
83
83
  )
84
84
 
85
85
  github_app_token_for_job_run_query = """
86
- query ghAppTokenForJobRun($jobRunId: GlobalID!) {
86
+ query ghAppTokenForJobRun($jobRunId: ID!) {
87
87
  ghAppTokenForJobRun(jobRunId: $jobRunId)
88
88
  }
89
89
  """
@@ -91,7 +91,7 @@ query ghAppTokenForJobRun($jobRunId: GlobalID!) {
91
91
  job_run_status_query = (
92
92
  job_run_status_fragment
93
93
  + """
94
- query jobRun($id: GlobalID!) {
94
+ query jobRun($id: ID!) {
95
95
  jobRun(id: $id) {
96
96
  ...JobRunStatusFragment
97
97
  }
@@ -101,7 +101,7 @@ query jobRun($id: GlobalID!) {
101
101
 
102
102
 
103
103
  job_secrets_for_job_run_query = """
104
- query jobSecretsForJobRun($jobRunId: GlobalID!) {
104
+ query jobSecretsForJobRun($jobRunId: ID!) {
105
105
  jobSecretsForJobRun(jobRunId: $jobRunId)
106
106
  }
107
107
  """
@@ -25,7 +25,14 @@ class Provisioning(BaseAction):
25
25
  return result.data["authorizedKeys"]
26
26
 
27
27
  def add_reservation_authorized_keys(self, reservation_id: str) -> None:
28
- SSH_DIR.mkdir(parents=True, exist_ok=True)
28
+ if SSH_DIR.exists() is False:
29
+ SSH_DIR.mkdir(parents=True, exist_ok=True)
30
+ SSH_DIR.chmod(0o700)
31
+
32
+ if AUTHORIZED_KEYS_FILEPATH.exists() is False:
33
+ AUTHORIZED_KEYS_FILEPATH.touch()
34
+ AUTHORIZED_KEYS_FILEPATH.chmod(0o600)
35
+
29
36
  AUTHORIZED_KEYS_BACKUP_FILEPATH = SSH_DIR.joinpath(
30
37
  f"authorized_keys.bak-{reservation_id}"
31
38
  )
@@ -1,5 +1,5 @@
1
1
  authorized_keys_query = """
2
- query authorizedKeys($reservationId: GlobalID!) {
2
+ query authorizedKeys($reservationId: ID!) {
3
3
  authorizedKeys(reservationId: $reservationId)
4
4
  }
5
5
  """
@@ -38,7 +38,7 @@ query reservations(
38
38
  reservation_query = (
39
39
  reservation_fragment
40
40
  + """
41
- query reservation($id: GlobalID!) {
41
+ query reservation($id: ID!) {
42
42
  reservation(id: $id) {
43
43
  ...ReservationFragment
44
44
  }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: primitive
3
- Version: 0.2.61
3
+ Version: 0.2.63
4
4
  Project-URL: Documentation, https://github.com//primitivecorp/primitive-cli#readme
5
5
  Project-URL: Issues, https://github.com//primitivecorp/primitive-cli/issues
6
6
  Project-URL: Source, https://github.com//primitivecorp/primitive-cli
@@ -1,4 +1,4 @@
1
- primitive/__about__.py,sha256=44bjP-EhQtVr_s6llvOiTQ56lIx7zqJ9wHAGO3s_eCw,130
1
+ primitive/__about__.py,sha256=czuy6jA-bgOBRtsQOuhaJxBJsOdcLPdwB4DU7h2EFqE,130
2
2
  primitive/__init__.py,sha256=bwKdgggKNVssJFVPfKSxqFMz4IxSr54WWbmiZqTMPNI,106
3
3
  primitive/cli.py,sha256=g7EtHI9MATAB0qQu5w-WzbXtxz_8zu8z5E7sETmMkKU,2509
4
4
  primitive/client.py,sha256=gyZIj61qMtOi_s8y0WG3gDehGT-Ms3BtbDP2J_2lajU,3753
@@ -19,7 +19,7 @@ primitive/daemons/launch_agents.py,sha256=cCxsvCBFmGlKOiBINsKi_NxcozLC8yPw3w6pxq
19
19
  primitive/daemons/launch_service.py,sha256=iuklHeuEqadlf8U1n9xFg4ZG1EKdK2jyaPI-VTlpJ4I,7907
20
20
  primitive/daemons/ui.py,sha256=Af3OJWJ0jdGlb1nfA5yaGYdhBEqqpM8zP2U2vUQdCbw,1236
21
21
  primitive/exec/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
22
- primitive/exec/actions.py,sha256=4d_TCjNDcVFoZ9Zw7ZuBa6hKMv2Xzm7_UX_8wcX1aSk,4124
22
+ primitive/exec/actions.py,sha256=rcAMP7hxJZhQUwx-orduCUratzMwVRknX14QSyQLdcA,4348
23
23
  primitive/exec/commands.py,sha256=66LO2kkJC-ynNZQpUCXv4Ol15QoacdSZAHblePDcmLo,510
24
24
  primitive/exec/interactive.py,sha256=TscY6s2ZysijidKPheq6y-fCErUVLS0zcdTW8XyFWGI,2435
25
25
  primitive/files/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -54,7 +54,7 @@ primitive/jobs/commands.py,sha256=MxPCkBEYW_eLNqgCRYeyj7ZcLOFAWfpVZlqDR2Y_S0o,83
54
54
  primitive/jobs/graphql/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
55
55
  primitive/jobs/graphql/fragments.py,sha256=rWZWxZs9ZWjWal0eiY_XPWUS7i7f3fwSM_w8ZvDs2JQ,614
56
56
  primitive/jobs/graphql/mutations.py,sha256=8ASvCmwQh7cMeeiykOdYaYVryG8FRIuVF6v_J8JJZuw,219
57
- primitive/jobs/graphql/queries.py,sha256=ZxNmm-WovytbggNuKRnwa0kc26T34_0yhqkoqx-2uj0,1736
57
+ primitive/jobs/graphql/queries.py,sha256=57B5mSnAYjNEFFk1P69odON0fqkf7FyhsA316pcxb6g,1712
58
58
  primitive/messaging/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
59
59
  primitive/messaging/provider.py,sha256=NCgl1KiV4Ow49Laz2grNGsP7Ij4vUUeorUjkhAKF1H4,4182
60
60
  primitive/monitor/actions.py,sha256=AZOoNzASorvye5309h6BJbsup_jR8YunQ19EiG5SAQg,9643
@@ -74,16 +74,16 @@ primitive/projects/graphql/fragments.py,sha256=02F5nyI8i-ML_bV5FFHUgFWM5bBBfjmz_
74
74
  primitive/projects/graphql/mutations.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
75
75
  primitive/projects/graphql/queries.py,sha256=nFaVf6YOHA2L_FTgIUdRK-80hYTmv1a1X5ac7QPMp1k,646
76
76
  primitive/provisioning/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
77
- primitive/provisioning/actions.py,sha256=oM19p1JyqwPhfJtyy23RqhuIKinorTo78yOYWVLC98c,2165
77
+ primitive/provisioning/actions.py,sha256=o4JA-CNJPfMXwhqSLAQ5SI9o1TLNPKbn5GpJn4ML_ds,2392
78
78
  primitive/provisioning/graphql/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
79
- primitive/provisioning/graphql/queries.py,sha256=cBtuKa6shoatYZfKSnQoPJP6B8g8y3QhFqJ_pkvMcG0,134
79
+ primitive/provisioning/graphql/queries.py,sha256=QxXkn9jEzfpevXu9iYCPFEJLs8SXgS0mABwJM98dEGg,128
80
80
  primitive/reservations/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
81
81
  primitive/reservations/actions.py,sha256=vxJ62oriy3Km1d_tiFGMbSclkMJf66eaUgVuhjGmuyA,7021
82
82
  primitive/reservations/commands.py,sha256=LFRoV59QGgWIjBdrGjJdffHugg8TLe0Fwlcyu_JaTkk,2369
83
83
  primitive/reservations/graphql/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
84
84
  primitive/reservations/graphql/fragments.py,sha256=h3edd0Es38SNldhHiRU3hAJNYwrUIJMWxiP8av3BfrI,431
85
85
  primitive/reservations/graphql/mutations.py,sha256=IqzwQL7OclN7RpIcidrTQo9cGYofY7wqoBOdnY0pwN8,651
86
- primitive/reservations/graphql/queries.py,sha256=x31wTRelskX2fc0fx2qrY7XT1q74nvzLv_Xef3o9weg,746
86
+ primitive/reservations/graphql/queries.py,sha256=BP7ON6QfChZRlY_YTyUbxM_tEPSfJqc8DknfpTvQ7hk,740
87
87
  primitive/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
88
88
  primitive/utils/actions.py,sha256=Gm84YgXFSpilpYqjG5nxcQTdRSp3waN7ZorzIzMBLtc,208
89
89
  primitive/utils/auth.py,sha256=uBIZNPF2CpbaPV2UMi6eWVUKghV6WIm-pG3-UM29bNs,1465
@@ -99,8 +99,8 @@ primitive/utils/psutil.py,sha256=xa7ef435UL37jyjmUPbEqCO2ayQMpCs0HCrxVEvLcuM,763
99
99
  primitive/utils/shell.py,sha256=Z4zxmOaSyGCrS0D6I436iQci-ewHLt4UxVg1CD9Serc,2171
100
100
  primitive/utils/text.py,sha256=XiESMnlhjQ534xE2hMNf08WehE1SKaYFRNih0MmnK0k,829
101
101
  primitive/utils/x509.py,sha256=HwHRPqakTHWd40ny-9O_yNknSL1Cxo50O0UCjXHFq04,3796
102
- primitive-0.2.61.dist-info/METADATA,sha256=VMscEolFKYI028E5OFCQY8wouk_Zw0eBzU1vXSCjwBA,3540
103
- primitive-0.2.61.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
104
- primitive-0.2.61.dist-info/entry_points.txt,sha256=p1K8DMCWka5FqLlqP1sPek5Uovy9jq8u51gUsP-z334,48
105
- primitive-0.2.61.dist-info/licenses/LICENSE.txt,sha256=B8kmQMJ2sxYygjCLBk770uacaMci4mPSoJJ8WoDBY_c,1098
106
- primitive-0.2.61.dist-info/RECORD,,
102
+ primitive-0.2.63.dist-info/METADATA,sha256=bVxPBGyklm_OXMbDRcs-si-YSYl_afEbU7HLQnQqpMA,3540
103
+ primitive-0.2.63.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
104
+ primitive-0.2.63.dist-info/entry_points.txt,sha256=p1K8DMCWka5FqLlqP1sPek5Uovy9jq8u51gUsP-z334,48
105
+ primitive-0.2.63.dist-info/licenses/LICENSE.txt,sha256=B8kmQMJ2sxYygjCLBk770uacaMci4mPSoJJ8WoDBY_c,1098
106
+ primitive-0.2.63.dist-info/RECORD,,