Skip to content
This repository has been archived by the owner on Jun 6, 2023. It is now read-only.

Latest commit

 

History

History
45 lines (36 loc) · 1.22 KB

GIT_UPDATE_EXAMPLE.md

File metadata and controls

45 lines (36 loc) · 1.22 KB

sudo apt update sudo apt install git python3 python3-pip pip3 install requests boto3 configparser

example

import requests
import boto3
import zipfile
import os

# Read configuration file
config = configparser.ConfigParser()
config.read('config.ini')
github_token = config['GITHUB']['token']
s3_bucket_name = config['S3']['bucket_name']
s3_access_key = config['S3']['access_key']
s3_secret_key = config['S3']['secret_key']

# Clone repository
repo_url = 'https://github.com/USERNAME/REPO_NAME.git'
repo_dir = '/path/to/repo'
os.system(f'git clone {repo_url} {repo_dir}')

# Get latest release
api_url = 'https://api.github.com/repos/USERNAME/REPO_NAME/releases/latest'
headers = {'Authorization': f'token {github_token}'}
response = requests.get(api_url, headers=headers)
release = response.json()

# Package release
release_dir = '/path/to/release'
zip_file = f'{release_dir}.zip'
with zipfile.ZipFile(zip_file, 'w') as zf:
    for root, dirs, files in os.walk(release_dir):
        for file in files:
            zf.write(os.path.join(root, file))

# Upload to S3
s3 = boto3.resource('s3', aws_access_key_id=s3_access_key, aws_secret_access_key=s3_secret_key)
s3.Bucket(s3_bucket_name).upload_file(zip_file, 'RELEASE_NAME.zip')