GIT Updater

GIT Source Updater merupakan script yang dapat membantu dalam melakukan update sebuah repo dalam deployment secara otomatis. Update dilakukan dengan membaca setiap commit yang di-push, selanjutnya melakukan fetch raw source dari GIT server. GIT server yang didukung saat ini hanya Bitbucket dan Github, silakan kunjungi halaman GitHub Project untuk source lengkap.

How to use

Buat script php dengan nama tertentu (misalnya update.php), tempatkan script tersebut di ROOT project web. Untuk deployment project LRsoft, kami gunakan script ini untuk melakukan update ke semua project yang menggunakan LRS Engine.

Easy setup

1
2
3
4
5
set_time_limit( 0 );                    // set jadi unlimited

require_once( 'cURL.php' );             // class pembantu untuk keperluan URL
require_once( 'GitHub.php' );           // untuk github
require_once( 'Bitbucket.php' );        // untuk bitbucket

Isi credentials.

1
2
3
4
5
/** Bitbucket credentials */
$username       = 'User';               // username
$password       = 'password';           // password
$account_slug   = 'user';               // user slug, biasanya terdapat pada URL repo
$repo_slug      = 'repo';               // repo slug, biasanya juga terdapat pada URL repo

Ekekusi!

1
2
$github = new GitHub( $username, $password, $account_slug, $repo_slug );
$status = $github->_init()->get_status();       // untuk keperluan debugging

Screenshot

_images/screenshot1.png _images/screenshot2.png _images/screenshot3.png

References

class GitHub

GIT server dari GitHub

__construct($_username, $_password, $_account_slug)

Basic init.

Parameter:
  • $_username (string) -- Username akun GitHub.
  • $_password (string) -- Password akun GitHub.
  • $_account_slug (string) -- Slug akun, biasanya terdapat pada URL.
Kembali:

Class object

_init()

Jalankan proses update.

Kembali:Class object
set_branch($branch)

Set branch tertentu.

Parameter:
  • $branch (string) -- Nama branch.
Kembali:

Class object

append_ignored_file($ignored_file)

Tambahan pengecualian untuk file-file tertentu yang tidak diinginkan.

Parameter:
  • $ignored_file (string) -- Nama (dan path) file.
Kembali:

Class object

get_status()

Mendapatkan status perubahan dari tiap file.

Kembali:Array perubahan file
class Bitbucket

GIT server dari Bitbucket

__construct($_username, $_password, $_account_slug)

Basic init.

Parameter:
  • $_username (string) -- Username akun Bitbucket.
  • $_password (string) -- Password akun Bitbucket.
  • $_account_slug (string) -- Slug akun, biasanya terdapat pada URL.
Kembali:

Class object

_init()

Jalankan proses update.

Kembali:Class object
set_branch($branch)

Set branch tertentu.

Parameter:
  • $branch (string) -- Nama branch.
Kembali:

Class object

set_limit($limit)

Set limit selama fetching list commit dari suatu branch.

Parameter:
  • $limit (int) -- Batas jumlah commit.
Kembali:

Class object

append_ignored_file($ignored_file)

Tambahan pengecualian untuk file-file tertentu yang tidak diinginkan.

Parameter:
  • $ignored_file (string) -- Nama (dan path) file.
Kembali:

Class object

get_status()

Mendapatkan status perubahan dari tiap file.

Kembali:Array perubahan file