290 lines
12 KiB
PHP
290 lines
12 KiB
PHP
|
<?php
|
||
|
return [
|
||
|
'@class' => 'Grav\\Common\\File\\CompiledYamlFile',
|
||
|
'filename' => '/home/phvos/web/dedijk4.nl/public_html/user/plugins/git-sync/blueprints.yaml',
|
||
|
'modified' => 1582124788,
|
||
|
'data' => [
|
||
|
'name' => 'Git Sync',
|
||
|
'version' => '2.0.5',
|
||
|
'description' => 'Allows to synchronize portions of Grav with Git Repositories (GitHub, BitBucket, GitLab)',
|
||
|
'icon' => 'git',
|
||
|
'author' => [
|
||
|
'name' => 'Trilby Media, LLC',
|
||
|
'email' => 'hello@trilby.media',
|
||
|
'url' => 'http://trilby.media'
|
||
|
],
|
||
|
'homepage' => 'http://trilby.media',
|
||
|
'keywords' => 'grav, plugin, git, sync, github, bitbucket, gitlab',
|
||
|
'issues' => 'https://github.com/trilbymedia/grav-plugin-git-sync/issues',
|
||
|
'docs' => 'https://github.com/trilbymedia/grav-plugin-git-sync',
|
||
|
'license' => 'MIT',
|
||
|
'dependencies' => [
|
||
|
0 => [
|
||
|
'name' => 'grav',
|
||
|
'version' => '>=1.5.0'
|
||
|
],
|
||
|
1 => [
|
||
|
'name' => 'form',
|
||
|
'version' => '>=2.16.3'
|
||
|
]
|
||
|
],
|
||
|
'form' => [
|
||
|
'validation' => 'strict',
|
||
|
'fields' => [
|
||
|
'Basic' => [
|
||
|
'type' => 'section',
|
||
|
'title' => 'Basic Settings',
|
||
|
'underline' => true
|
||
|
],
|
||
|
'enabled' => [
|
||
|
'type' => 'toggle',
|
||
|
'label' => 'Plugin Status',
|
||
|
'highlight' => 1,
|
||
|
'default' => 0,
|
||
|
'options' => [
|
||
|
1 => 'Enabled',
|
||
|
0 => 'Disabled'
|
||
|
],
|
||
|
'validate' => [
|
||
|
'type' => 'bool'
|
||
|
]
|
||
|
],
|
||
|
'folders' => [
|
||
|
'type' => 'selectize',
|
||
|
'multiple' => true,
|
||
|
'label' => 'Folders to Sync',
|
||
|
'classes' => 'fancy',
|
||
|
'description' => 'Removing folders after they have been synced may cause undesired results.',
|
||
|
'default' => [
|
||
|
0 => 'pages'
|
||
|
],
|
||
|
'options' => [
|
||
|
0 => 'pages',
|
||
|
1 => 'themes',
|
||
|
2 => 'plugins',
|
||
|
3 => 'config',
|
||
|
4 => 'data'
|
||
|
],
|
||
|
'selectize' => [
|
||
|
'create' => true
|
||
|
],
|
||
|
'validate' => [
|
||
|
'type' => 'commalist'
|
||
|
]
|
||
|
],
|
||
|
'Sync' => [
|
||
|
'type' => 'section',
|
||
|
'title' => 'Automatic Synchronization Settings',
|
||
|
'underline' => true
|
||
|
],
|
||
|
'SyncNotice' => [
|
||
|
'type' => 'spacer',
|
||
|
'markdown' => true,
|
||
|
'text' => '! To improve the speed of saving pages you can disable automatic sync. Then, changes to a page will not be sent to the remote repository on every save. To sync your changes to the repository tap the GitSync button (<i class="fa fa-git"></i>) in the top left of the Administration Panel, or use the below Scheduler option to add the GitSync Syncronization Job to the Scheduler (<strong>Grav 1.6 required</strong>).
|
||
|
'
|
||
|
],
|
||
|
'sync.on_save' => [
|
||
|
'type' => 'toggle',
|
||
|
'label' => 'Sync on Page Save',
|
||
|
'help' => 'Sync with the remote directory when a page is saved through the admin',
|
||
|
'default' => 1,
|
||
|
'highlight' => 1,
|
||
|
'options' => [
|
||
|
1 => 'PLUGIN_ADMIN.YES',
|
||
|
0 => 'PLUGIN_ADMIN.NO'
|
||
|
],
|
||
|
'validate' => [
|
||
|
'type' => 'bool'
|
||
|
]
|
||
|
],
|
||
|
'sync.on_delete' => [
|
||
|
'type' => 'toggle',
|
||
|
'label' => 'Sync on Page Delete',
|
||
|
'help' => 'Sync with the remote directory when a page is deleted through the admin',
|
||
|
'default' => 1,
|
||
|
'highlight' => 1,
|
||
|
'options' => [
|
||
|
1 => 'PLUGIN_ADMIN.YES',
|
||
|
0 => 'PLUGIN_ADMIN.NO'
|
||
|
],
|
||
|
'validate' => [
|
||
|
'type' => 'bool'
|
||
|
]
|
||
|
],
|
||
|
'sync.on_media' => [
|
||
|
'type' => 'toggle',
|
||
|
'label' => 'Sync on Media Changes',
|
||
|
'help' => 'Sync with the remote directory when a media is uploaded or deleted through the admin immediately (instead of only syncing when the page is saved)',
|
||
|
'default' => 1,
|
||
|
'highlight' => 1,
|
||
|
'options' => [
|
||
|
1 => 'PLUGIN_ADMIN.YES',
|
||
|
0 => 'PLUGIN_ADMIN.NO'
|
||
|
],
|
||
|
'validate' => [
|
||
|
'type' => 'bool'
|
||
|
]
|
||
|
],
|
||
|
'sync.cron_enable' => [
|
||
|
'type' => 'toggle',
|
||
|
'label' => 'Add Sync to Scheduler',
|
||
|
'help' => 'Add GitSync Job to the Scheduler so it can automatically perform synchronization at the given time',
|
||
|
'default' => 0,
|
||
|
'highlight' => 1,
|
||
|
'options' => [
|
||
|
1 => 'PLUGIN_ADMIN.YES',
|
||
|
0 => 'PLUGIN_ADMIN.NO'
|
||
|
],
|
||
|
'validate' => [
|
||
|
'type' => 'bool'
|
||
|
]
|
||
|
],
|
||
|
'sync.cron_at' => [
|
||
|
'type' => 'cron',
|
||
|
'label' => 'Run Sync at',
|
||
|
'help' => 'When should the Scheduler run the automatic GitSync synchronization job',
|
||
|
'default' => '0 12,23 * * *'
|
||
|
],
|
||
|
'Repo' => [
|
||
|
'type' => 'section',
|
||
|
'title' => 'Git Repository Settings',
|
||
|
'underline' => true
|
||
|
],
|
||
|
'local_repository' => [
|
||
|
'type' => 'hidden',
|
||
|
'multiple' => false,
|
||
|
'size' => 'medium',
|
||
|
'label' => 'Local Repository Path'
|
||
|
],
|
||
|
'repository' => [
|
||
|
'type' => 'text',
|
||
|
'label' => 'Git Repository',
|
||
|
'placeholder' => 'https://github.com/user/repository.git'
|
||
|
],
|
||
|
'user' => [
|
||
|
'type' => 'text',
|
||
|
'label' => 'Git User',
|
||
|
'placeholder' => 'Username, not email',
|
||
|
'autocomplete' => 'off'
|
||
|
],
|
||
|
'password' => [
|
||
|
'type' => 'enc-password',
|
||
|
'label' => 'Git Password or Token',
|
||
|
'placeholder' => 'Your Git Password or Token',
|
||
|
'description' => 'Enter your password or token to encrypt and securely store it, then save the settings. It will not show up here for security reasons.',
|
||
|
'autocomplete' => 'off'
|
||
|
],
|
||
|
'webhook' => [
|
||
|
'type' => 'text',
|
||
|
'label' => 'Repository Web Hook URL',
|
||
|
'placeholder' => '/_git-sync',
|
||
|
'data-default@' => '\\Grav\\Plugin\\GitSyncPlugin::generateRandomWebhook'
|
||
|
],
|
||
|
'webhook_enabled' => [
|
||
|
'type' => 'toggle',
|
||
|
'label' => 'Web Hook Secret',
|
||
|
'highlight' => 1,
|
||
|
'default' => 0,
|
||
|
'options' => [
|
||
|
1 => 'Enabled',
|
||
|
0 => 'Disabled'
|
||
|
],
|
||
|
'description' => 'With this setting enabled, only authorized webhook calls will be able to trigger a synchronization (recommended)'
|
||
|
],
|
||
|
'webhook_secret' => [
|
||
|
'type' => 'text',
|
||
|
'label' => 'Repository Web Hook Secret',
|
||
|
'placeholder' => 'Your Web Hook Secret',
|
||
|
'data-default@' => '\\Grav\\Plugin\\GitSyncPlugin::generateWebhookSecret',
|
||
|
'description' => 'You can either use this randomly generated string or enter your own secret. <br /> **Bitbucket** does not yet support Webhook Secrets.',
|
||
|
'markdown' => true
|
||
|
],
|
||
|
'Advanced' => [
|
||
|
'type' => 'section',
|
||
|
'title' => 'Advanced Git Settings',
|
||
|
'underline' => true
|
||
|
],
|
||
|
'branch' => [
|
||
|
'type' => 'text',
|
||
|
'default' => 'master',
|
||
|
'label' => 'Local Branch',
|
||
|
'placeholder' => 'master'
|
||
|
],
|
||
|
'remote.name' => [
|
||
|
'type' => 'text',
|
||
|
'default' => 'origin',
|
||
|
'label' => 'Remote Name',
|
||
|
'placeholder' => 'origin'
|
||
|
],
|
||
|
'remote.branch' => [
|
||
|
'type' => 'text',
|
||
|
'default' => 'master',
|
||
|
'label' => 'Remote Branch',
|
||
|
'placeholder' => 'master'
|
||
|
],
|
||
|
'git.author' => [
|
||
|
'type' => 'select',
|
||
|
'default' => 'gituser',
|
||
|
'label' => 'Commits Author',
|
||
|
'options' => [
|
||
|
'gituser' => 'Use Git User Name',
|
||
|
'gitsync' => 'Use GitSync Committer Name',
|
||
|
'gravuser' => 'Use Grav User Name',
|
||
|
'gravfull' => 'Use Grav User Full Name'
|
||
|
]
|
||
|
],
|
||
|
'git.message' => [
|
||
|
'type' => 'text',
|
||
|
'default' => '(Grav GitSync) Automatic Commit',
|
||
|
'label' => 'Commit message',
|
||
|
'placeholder' => '(Grav GitSync) Automatic Commit',
|
||
|
'help' => 'You can use {{pageTitle}} or {{pageRoute}} in your message as placeholders for the title or route of the page being saved'
|
||
|
],
|
||
|
'git.name' => [
|
||
|
'type' => 'text',
|
||
|
'default' => 'GitSync',
|
||
|
'label' => 'Committer Name',
|
||
|
'placeholder' => 'GitSync'
|
||
|
],
|
||
|
'git.email' => [
|
||
|
'type' => 'text',
|
||
|
'default' => 'git-sync@trilby.media',
|
||
|
'label' => 'Committer Email',
|
||
|
'placeholder' => 'git-sync@trilby.media'
|
||
|
],
|
||
|
'git.bin' => [
|
||
|
'type' => 'text',
|
||
|
'default' => 'git',
|
||
|
'label' => 'Git Binary Path',
|
||
|
'help' => 'If the default `git` command doesn\'t work on your machine or if you want to specify a custom path, do it in here',
|
||
|
'placeholder' => '/usr/bin/git'
|
||
|
],
|
||
|
'logging' => [
|
||
|
'type' => 'toggle',
|
||
|
'default' => 0,
|
||
|
'label' => 'Log Git Commands',
|
||
|
'help' => 'Logs git commands. Useful to debug and troubleshoot git execution',
|
||
|
'highlight' => 0,
|
||
|
'options' => [
|
||
|
1 => 'PLUGIN_ADMIN.YES',
|
||
|
0 => 'PLUGIN_ADMIN.NO'
|
||
|
],
|
||
|
'validate' => [
|
||
|
'type' => 'bool'
|
||
|
]
|
||
|
],
|
||
|
'Actions' => [
|
||
|
'type' => 'section',
|
||
|
'title' => 'Actions',
|
||
|
'underline' => true
|
||
|
],
|
||
|
'_wizard' => [
|
||
|
'type' => 'git-wizard',
|
||
|
'label' => 'Text Variable',
|
||
|
'help' => 'Text to add to the top of a page'
|
||
|
]
|
||
|
]
|
||
|
]
|
||
|
]
|
||
|
];
|