zero-24 / plg_system_gitdeploy

This Joomla plugin allows to automaticly deploy changes from a git repo and is based on [KickDeploy](https://github.com/nielsnuebel/kickdeploy)
8 stars 4 forks source link
gitdeployer joomla joomla-plugin

GitDeploy Plugin

This plugin allows to automaticly deploy changes from a git repo and is based on KickDeploy

Features

This plugin allows to listen on github hooks and than deploy changes from a git repo.

Configuration

Initial setup the plugin

Now the inital setup is completed.

Additional remarks

Suggested .htaccess rule

When you git repo is directly accessible to the web i would suggest to deny the access to the .git folder via an .htaccess file

# Don't allow access to .git folder
RedirectMatch 404 /\.git

Customise the Notification Message

You can customise the notification message using language overrides of the following two language strings

PLG_SYSTEM_GITDEPLOY_MESSAGE_BODY="<p>The Github user <a href='https://github.com/{pusherName}' title='@{pusherName}' target='_blank' rel='noopener noreferrer'>@{pusherName}</a> has pushed to <a href='{repoUrl}' title='{repoUrl}' target='_blank' rel='noopener noreferrer'>{repoUrl}</a> that changes have now been pulled into: <a href='{currentSite}' title='{currentSite}' target='_blank' rel='noopener noreferrer'>{currentSite}</a>.</p><p>Here's a brief list of what has been changed:</p>{commitsHtml}<p>What follows is the output of the script:</p><pre>{gitOutput}</pre><p>Kind Regards, <br>Github Webhook Endpoint</p>"
PLG_SYSTEM_GITDEPLOY_MESSAGE_BODY_COMMITS_LINE="<li>{commitMessage} (<small>Added: <strong>{commitAdded}</strong> Modified: <strong>{commitModified}</strong> Removed: <strong>{commitRemoved}</strong> Commit: <a href='{commitUrl}' title='{commitUrl}' target='_blank' rel='noopener noreferrer'>{commitUrl}</a></small>)</li>"

Please make sure that you only use the html a, p, ul, li, strong, small, br & pre tags as well as make sure the title attribute for links is the same as the infomation showed.

The following parameters are supported right now for the PLG_SYSTEM_GITDEPLOY_MESSAGE_BODY language string:

The following parameters are supported right now for the PLG_SYSTEM_GITDEPLOY_MESSAGE_BODY_COMMITS_LINE language string:

Update Server

Please note that my update server only supports the latest version running the latest version of Joomla and atleast PHP 7.2.5. Any other plugin version I may have added to the download section don't get updates using the update server.

Issues / Pull Requests

You have found an Issue, have a question or you would like to suggest changes regarding this extension? Open an issue in this repo or submit a pull request with the proposed changes.

Translations

You want to translate this extension to your own language? Check out my Crowdin Page for my Extensions for more details. Feel free to open an issue here on any question that comes up.

Joomla! Extensions Directory (JED)

This plugin can also been found in the Joomla! Extensions Directory: GitDeploy by zero24

Release steps

Crowdin

Upload new strings

crowdin upload sources

Download translations

crowdin download --skip-untranslated-files --ignore-match