Add github repository to a project

Hello,

On the private project page, I saw the notice saying that we should now use github repositories instead of private plugins.

My question is, I have several projects containing private repositories, what should I do to replace them with github repositories ?

Thank you

You’ll most likely have to setup your git env with SSH authentication so when you request the package, you get access to it.

Also, check out this documentation on installing a plugin or theme from git: Command List - October CMS - 2.x

As for deploying things, I would use Rainlab.Deploy to keep plugins up to date as it doesn’t require you pull from git. It copies the plugins directly to the site.

Hello, thank you for your answer.

My question is not about how to install an individual plugin from github, I know how to do this.
My question is about the way to add a github plugin to a project, because I start all my projects with the same set of plugins (mix of community and private plugins), and I would like to install them all in one command like I do today with php artisan project:sync

Best regards,

Alex

No problem and my apologies for the misunderstanding.

From what I know, you probably won’t be able to do it in the way you’re used to. I would create a bash script to install those plugins via command line.

Hey Alex, welcome. As @artistro08 pointed out, the way to install private plugins is using the plugin:install console command, which adds the plugin to your composer.json file. Here is an example of installing the test plugin from a public github repo:

php artisan plugin:install October.Test --from=https://github.com/octobercms/test-plugin

In this light, your composer.json file is your application’s definition and you can reuse this file as your starting point for all new websites. This is the intended use of composer and package managers in general.

From v2 onwards, October CMS has moved to full composer support and the October CMS project no longer forces the application definition. The October CMS project is still used as a way to authenticate and get access to third-party products.

Here is an excerpt from the upgrade guide:

Project is No Longer Syncronised Automatically

Previously when performing a system update, the platform will check with the server for any new plugins or themes and install them. This forces the website to use all plugins and themes defined by the project. This functionality has changed to decouple this process and the plugins and themes are now defined by the composer.json file instead.

A new command has been introduced to install anything added to the project recently.

php artisan project:sync

This command will install all plugins and themes defined by the project and add them to your composer file.

The October CMS marketplace is a publishing platform like GitHub. When working with first-party products, you can cut out the middleman and give yourself access to your own code. So there is no reason to host private or personal plugins there.

I hope this makes sense.

1 Like