GitHub API Dengan Python & PowerShell Scripting
GitHub API Dengan Python & PowerShell Scripting
Menggunakan GitHub API dengan Python dan PowerShell Scripting untuk membuat dan mengelola repositori.
GitHub API adalah antarmuka yang disediakan oleh GitHub untuk developer yang ingin mengembangkan aplikasi yang menargetkan GitHub . Misalnya, Anda bisa membangun aplikasi dengan lebih banyak fungsionalitas atau lapisan presentasi yang lebih baik di atas API .
Pada artikel ini, saya akan menunjukkan kepada Anda bagaimana menggunakan API GitHub untuk mengembangkan aplikasi python yang keren untuk membuat dan mengelola repositori GitHub.
Untuk membuat GUI, kita bisa menggunakan modul python Tkinter. Mari kita uji pengaturan API kita menggunakan perintah di bawah ini. Semua data dikirim dan diterima sebagai JSON.
curl https://api.github.com/zen
Responsnya akan berupa pilihan acak dari filosofi desain GitHub.
Buat Repositori Baru
Untuk membuat repositori baru dan mendorong file yang diperlukan ke dalam repositori itu, kita perlu mengambil input yang diperlukan dari pengguna dan memvalidasinya.
° Validasi Nama Pengguna GitHub - Seseorang dapat menemukan apakah Akun GitHub ada dengan nama pengguna tertentu atau tidak.
Kita perlu menggunakan titik akhir di bawah ini.
https://api.github.com/users/GitHub_Username
Jika pengguna ada itu mengembalikan kode status '200'. Dan kita bisa melihat hasilnya seperti gambar di bawah ini
Sekarang, ini dapat digunakan untuk membangun fungsi untuk memvalidasi apakah pengguna ada atau tidak.
# Github UserName Validationdef UserExist(UserName):if UserName == "":return Falseapi_url = "https://api.github.com/users/" + UserNamer=requests.get(api_url)if r.status_code == 200:d =json.loads(r.content.decode('utf-8'))try:if d['login']==UserName:return Trueelse:return Falseexcept:return Falseelse:return False
Validasi Nama Pengguna GitHub
Jika nama pengguna tidak ada, kami dapat meminta pengguna untuk membuat akun GitHub. Jika ada, kita perlu memeriksa apakah repositori itu ada atau tidak.
Periksa apakah Repositori ada
Endpoint di bawah ini akan mengembalikan daftar repositori untuk nama pengguna tertentu dalam format JSON.
curl https://api.github.com/users/GitHub_UserName/repos
Responsnya akan seperti ini.
Untuk membuat repositori baru, kita perlu memeriksa bahwa nama repositori yang dimasukkan oleh pengguna tidak ada.
# Check if the RepoName existsdef RepoExist(UserName,RepoName):if RepoName == "" or len(RepoName.split())>1:return "Not A Valid Repo Name"api_url = "https://api.github.com/users/" + UserName +"/repos"r=requests.get(api_url)if r.status_code == 200:d =json.loads(r.content.decode('utf-8'))try:for i in d:if RepoName == i['name']:return "Exist"except:return "Not Exist"return "Not Exist"
Periksa apakah repositori ada
Jika respon tidak mengembalikan kode status '200' itu menyatakan bahwa repositori publik untuk Akun GitHub tersebut tidak ada. Jadi kita baik-baik saja untuk membuat repositori.
Deskripsi - Ini adalah parameter opsional. Kami dapat menambahkan deskripsi ke repositori GitHub kami melalui API.
Jalur repositori - Untuk mendorong (mengunggah) file ke repositori, kita dapat meminta pengguna untuk jalur ke direktori. Ini bisa menjadi parameter opsional, secara default kita dapat mengambil jalur direktori saat ini.
Sekarang kita telah mendapatkan semua variabel yang diperlukan untuk membuat repositori baru dan mendorong file ke dalamnya. Untuk membuat repo GitHub, kita dapat menggunakan perintah di bawah ini
command = 'start /wait cmd /c curl -u '+UserName+' https://api.github.com/user/repos -d "{\\"name\\":\\"'+RepoName+'\\",\\"description\\":\\"'+Description+'\\"}"'l = os.system(command)
Perintah untuk membuat repo GitHub
Setelah repositori dibuat, file dari jalur yang diberikan perlu diunggah. Untuk mencapai fungsionalitas ini kita dapat menggunakan skrip PowerShell.
Set-Location $RepoPath# Initiating repo$git_init = git init# Adding files to staging area$git_add = git add *# Commit the changes$git_commit = git commit -m "initial commit with GitLearn"# adding a remote$remote_add = git remote add origin https://github.com/$UserName/$RepoName.git#pushing the contents to repo$git_push = git push origin master
PowerShell Script untuk membuat repositori baru
Sekarang kita bisa mengeksekusi script dengan python seperti gambar di bawah ini,
p = subprocess.Popen(["powershell.exe","-ExecutionPolicy","Unrestricted","./scripts/gitplay.ps1",UserName,RepoName,newrepo,RepoPath],stdout=subprocess.PIPE,stderr=subprocess.PIPE)p.communicate()
Jalankan skrip PowerShell menggunakan Python
Anda dapat menemukan kode lengkap untuk skrip PowerShell di sini .
Mari kita coba dengan sebuah contoh,
Setelah mengirimkan detailnya, kita perlu memasukkan kata sandi untuk Akun GitHub itu.
Itu saja, repositori akan dibuat untuk kita dengan semua file yang diperlukan diunggah.
Kami juga dapat membuat repositori dengan perintah di bawah ini,
curl -u GitHub_UserName https://api.github.com/user/repos -d "{\"name\":\"Test-Repo\",\"description\":\"A Sample Description\"}"
Kita dapat menggunakan API GitHub di web atau aplikasi android kita juga. Berbagai parameter dapat diteruskan ke Root Endpoint untuk mendapatkan respons tertentu yang diperlukan untuk aplikasi kita saat ini. Anda dapat menemukan info lebih lanjut di sini .
Untuk mendownload seluruh aplikasi python klik disini.
Kode lengkapnya dapat ditemukan di GitHub di sini .
Kesimpulan
Kami telah melihat cara menggunakan GitHub API di aplikasi kami untuk membuat dan mengelola repositori. Sampai jumpa lagi dengan topik yang lebih menarik. Sampai saat itu tetap aman dan tinggal di rumah.
Source : https://medium.com/towards-artificial-intelligence/github-api-with-python-powershell-scripting-47d39b5d32d1
Posting Komentar untuk "GitHub API Dengan Python & PowerShell Scripting"
Terima kasih telah mengunjungi blog kami. Silakan tinggalkan jejak Anda dengan mengisi kolom komentar di bawah ini.