Giter Club home page Giter Club logo

strapi-plugin-netlify-deployments's Introduction

Netlify Deployments

npm version strapi market link

Strapi v4 plugin to trigger, monitor, and cancel deployments on one or more Netlify sites.

Plugin Preview

Home Page:

Plugin Home Page

Settings Page:

Plugin Settings Page

Installation

Install dependency

Run the following command in your Strapi project to install netlify-deployments:

yarn add strapi-plugin-netlify-deployments
# or
npm i -S strapi-plugin-netlify-deployments

Enable plugin configuration

Open config/plugins.js file and add the netlify-deployments entry:

module.exports = ({ env }) => ({
  "netlify-deployments": {
    enabled: true,
  },
});

Run

You can now run Strapi:

yarn develop

You should see the Netlify Deployments menu in the left panel.

Note: You may need to run yarn build in order to see the new menu entries.

Then you can proceed with the plugin configuration.

Plugin Configuration

Config properties

Example:

module.exports = ({ env }) => ({
  "netlify-deployments": {
    enabled: true,
    config: {
      accessToken: "<netlify-access-token>",
      sites: [
        {
          name: 'Site 1',
          id: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
          buildHook: "https://api.netlify.com/build_hooks/<hook_id>",
          branch: 'master' // optional
        }
      ]
    },
  },
});

The plugin is reading the following configuration variables to work:

  • accessToken: Access token of your Netlify account used to fetch the list of deployments

  • sites: An array of Netlify sites to view and manage deploys.

    • The array must have objects with a name, id, and buildHook. Optionally, you can include a branch to override the default value of master. The id can be found under Site settings > General and you can follow this guide to create a build hook.

Environment Configuration

You shouldn't disclose your Access Token for security reasons. Therefore, you shouldn't add this value to versioning in a public git repository. A suggested solution is to use an environment variable. Example:

module.exports = ({ env }) => ({
  "netlify-deployments": {
    enabled: true,
    config: {
      accessToken: process.env.NETLIFY_DEPLOYMENTS_PLUGIN_ACCESS_TOKEN
    },
  },
});

Local development

For local development, you can add the config properties in your .env file:

NETLIFY_DEPLOYMENTS_PLUGIN_ACCESS_TOKEN="<netlify-access-token>"

Server

You can save these values as process env variable on your server (e.g. this guide is for Heroku).

Credits

Thanks to gianlucaparadise for making strapi-plugin-vercel-deploy which this was based on.

strapi-plugin-netlify-deployments's People

Contributors

benjamingeets avatar codymx avatar gianlucaparadise avatar jclusso avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.