80 lines
2.1 KiB
Python
Executable File
80 lines
2.1 KiB
Python
Executable File
#!/usr/bin/env python
|
|
|
|
import os
|
|
import sys
|
|
import base64
|
|
|
|
# for key, value in os.environ.items():
|
|
# print(f"{key}={value}")
|
|
DEBUG = True
|
|
ACTIONS_RUNTIME_TOKEN = os.getenv('ACTIONS_RUNTIME_TOKEN')
|
|
INPUT_TOKEN = os.getenv('INPUT_TOKEN')
|
|
GITHUB_SERVER_URL = os.getenv('GITHUB_SERVER_URL')
|
|
GITHUB_REPOSITORY = os.getenv('GITHUB_REPOSITORY')
|
|
GITHUB_REF = os.getenv('GITHUB_REF')
|
|
GITHUB_REF_NAME = os.getenv('GITHUB_REF_NAME')
|
|
|
|
def escape(text):
|
|
return '"' + text + '"'
|
|
|
|
|
|
def exec_cmd(cmd):
|
|
result = os.popen(cmd)
|
|
print(result.read())
|
|
|
|
cmd = 'git init'
|
|
exec_cmd(cmd)
|
|
|
|
cmd = 'ls -la'
|
|
exec_cmd(cmd)
|
|
|
|
sample_string = "x-access-token:" + ACTIONS_RUNTIME_TOKEN
|
|
sample_string = "x-access-token:" + INPUT_TOKEN
|
|
sample_string_bytes = sample_string.encode("utf-8")
|
|
|
|
base64_bytes = base64.b64encode(sample_string_bytes)
|
|
base64_string = 'AUTHORIZATION: basic ' + base64_bytes.decode("utf-8")
|
|
|
|
key = 'http.'+GITHUB_SERVER_URL+'/.extraheader'
|
|
value = base64_string
|
|
cmd = 'git config set --local ' + key + ' ' + escape(value)
|
|
exec_cmd(cmd)
|
|
|
|
key = 'url.'+GITHUB_SERVER_URL+'/.insteadOf'
|
|
cmd = 'git config set --local ' + escape(key) + ' ' + GITHUB_SERVER_URL
|
|
|
|
key = 'url.'+GITHUB_SERVER_URL+'/.insteadOf'
|
|
key = 'url.https://'+INPUT_TOKEN+':x-oauth-basic@codex.r10x.net'+'/.insteadOf'
|
|
key = 'url.https://'+ACTIONS_RUNTIME_TOKEN+':x-oauth-basic@codex.r10x.net'+'/.insteadOf'
|
|
value = 'git@"'+base64_string+'"'
|
|
cmd = 'git config set --local ' + escape(key) + ' ' + escape(GITHUB_SERVER_URL)
|
|
exec_cmd(cmd)
|
|
|
|
cmd = 'git remote add origin ' + GITHUB_SERVER_URL + '/' + GITHUB_REPOSITORY
|
|
exec_cmd(cmd)
|
|
|
|
cmd = 'git fetch --progress --depth 1 origin ' + GITHUB_REF
|
|
exec_cmd(cmd)
|
|
|
|
cmd = 'git checkout ' + GITHUB_REF_NAME
|
|
exec_cmd(cmd)
|
|
|
|
cmd = 'ls -la'
|
|
exec_cmd(cmd)
|
|
|
|
# cmd = 'git config list --local'
|
|
# exec_cmd(cmd)
|
|
|
|
# cmd = 'git config list --global'
|
|
# exec_cmd(cmd)
|
|
|
|
# cmd = 'git clone ' + \
|
|
# GITHUB_SERVER_URL + '/' + \
|
|
# GITHUB_REPOSITORY + ' ' + os.getcwd()
|
|
# result = os.popen(cmd)
|
|
|
|
# cmd = 'git clone ' + \
|
|
# 'https://' + sample_string + '@codex.r10x.net' + '/' + \
|
|
# GITHUB_REPOSITORY
|
|
# result = os.popen(cmd)
|