ector/release-downloader

There is no license information available for the latest version (1.1.1) of this package.

Ector modules download manager

1.1.1 2023-11-09 10:31 UTC

This package is auto-updated.

Last update: 2024-09-20 14:26:52 UTC


README

Latest Version on Packagist Total Downloads

Composer dependency to download assets from a GitHub repository.

Installation

You can install the package via composer:

composer require ector/release-downloader

Usage

<?php 
use \Ector\ReleaseDownloader\Downloader;

$autoload = dirname(__FILE__) . "/vendor/autoload.php";
if (file_exists($autoload)) require_once $autoload;

$GitHubRepoOwner = "repo_owner_name";
$GitHubRepoName = "repo_name";
$GitHubAccessToken = "github_token";
$ReleaseVersion = "0.0.4"; // or null to download the latest version

$downloader = new Downloader($GitHubRepoOwner, $GitHubRepoName, $ReleaseVersion, $GitHubAccessToken);

Get the latest version Tag Name

$downloader->getLatestTagName();

Add the first available asset to download queue

$downloader->addAssetToDownload();

Add release source code to download queue

$downloader->addSourceCodeToDownload();

Search and add the asset with name "asset_name.zip" to download queue (if found)

$downloader->addAssetToDownload("asset_name.zip");

Performs the actual download of the assets in the queue

$downloader->download("/destination/path/");

Extract downloaded assets

$downloader->extract(); // extract in the same directory where assets are downloaded
// or 
$downloader->extract("/destination/path/");

NOTE: This method will automatically overwrite the destination path folder if already exists. It is possible to make a backup of the previuos folder.

$downloader->extract("/destination/path/", true);

Delete downloaded zip files

$downloader->delete();

Extract and delete downloaded zip files

$downloader->extractAndDelete(); // extract in the same directory where assets are downloaded
// or 
$downloader->extractAndDelete("/destination/path/", true);