Skip to content

A fully featured, self-hosted release server for electron applications, compatible with auto-updater.

License

Notifications You must be signed in to change notification settings

asmagin/electron-release-server

 
 

Repository files navigation

Electron Release Server (customized for Merck)

Installation

Database (MySQL)

  1. Create databases
CREATE DATABASE electron_release_server ;
  1. Create 'electron_release_server_user' user

  2. Grant 'OWNER' level permissions for the user for the database above (all permission except GRANT OPTION)

    *A database schema will be created automatically once the application starts.

Application server

  1. Install GIT
sudo apt-get install git
  1. Create a directory for an application
mkdir electron-release-server
  1. Clone a repository
GIT_SSL_NO_VERIFY=1
git clone https://<user_name>@git.epam.com/mrc-assy/electron-release-server.git
  1. Install latest version of NodeJS
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install nodejs -y

nodejs -v # should be 8.3.0 or higher
npm -v #should be 5.3.0 or higher
  1. Install Required NPM modules
npm install
  1. Define environment variables
NODE_ENV=production
  1. Update configuration files
// config/connection.js

mysqlServer: {
    adapter: 'sails-mysql',
    host: 'localhost',
    user: 'electron_release_server_user',
    password: '<password>',
    database: 'electron_release_server'
},
// config/files.js

dirname: '~/electron-release-server/assets'
// config/env/production.js

module.exports = {
  models: {
    connection: 'mysqlServer',
    migrate: 'safe'
  },

  port: 80,

  log: {
    level: "silent"
  },

  appUrl: 'http://<your host name>',

  auth: {
    static: {
      username: 'admin',
      password: '<your password>'
    },

    secret: '2xSqEsM4dtYQcNd5V6FBJHsqzMMOHkftiCviyzUlvtZ2kX88FB7kfhZTYJo2daj'
  },

  jwt: {
    token_secret: 'pCGoKop8bsyp9avlngPSPVw2hitfi0VGgVjjAygYLKTonXsYq0xa4uGKbSt6JFP'
  }
};
  1. Start an application
sudo npm start --prod

Documentation

Original documentation for the project could be found here.

Maintenance

You should keep your fork up to date with the electron-release-server master.

Doing so is simple, rebase your repo using the commands below.

git remote add upstream https://github.com/ArekSredzki/electron-release-server.git
git fetch upstream
git rebase upstream/master

License

MIT License

About

A fully featured, self-hosted release server for electron applications, compatible with auto-updater.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 71.2%
  • CSS 17.8%
  • HTML 9.2%
  • Shell 1.8%