Add backend config for site ID

Users can now specify `site_domain` in `config.yml`. This is useful
when attempting to access the CMS from a different host.
This commit is contained in:
Kevin McCormack 2017-04-18 10:59:35 -04:00
parent 23c1a68a7f
commit 76bf16d62e
3 changed files with 6 additions and 4 deletions

View File

@ -77,6 +77,7 @@ backend:
name: github name: github
repo: owner-name/repo-name # Path to your Github repository repo: owner-name/repo-name # Path to your Github repository
branch: master # Branch to update branch: master # Branch to update
site_domain: site-name.netlify.com # Your Netlify site address if different from host
``` ```
This names GitHub as the authentication provider, points to the repo location on github.com, and declares the branch where you want to merge changes. If you leave out the `branch` declaration, it will default to `master`. This names GitHub as the authentication provider, points to the repo location on github.com, and declares the branch where you want to merge changes. If you leave out the `branch` declaration, it will default to `master`.
@ -198,4 +199,3 @@ Based on this example, you can go through the post types in your site and add th
With your configuration complete, it's time to try it out! Go to `yoursite.com/admin` and complete the login prompt to access the admin interface. To add users, simply add them as collaborators on the GitHub repo. With your configuration complete, it's time to try it out! Go to `yoursite.com/admin` and complete the login prompt to access the admin interface. To add users, simply add them as collaborators on the GitHub repo.
Happy posting! Happy posting!

View File

@ -17,7 +17,7 @@ export default class AuthenticationPage extends React.Component {
if (document.location.host.split(':')[0] === 'localhost') { if (document.location.host.split(':')[0] === 'localhost') {
auth = new Authenticator({ site_id: 'cms.netlify.com' }); auth = new Authenticator({ site_id: 'cms.netlify.com' });
} else { } else {
auth = new Authenticator(); auth = new Authenticator({ site_id: this.props.siteId });
} }
auth.authenticate({ provider: 'github', scope: 'repo' }, (err, data) => { auth.authenticate({ provider: 'github', scope: 'repo' }, (err, data) => {

View File

@ -51,6 +51,7 @@ class App extends React.Component {
runCommand: PropTypes.func.isRequired, runCommand: PropTypes.func.isRequired,
isFetching: PropTypes.bool.isRequired, isFetching: PropTypes.bool.isRequired,
publishMode: PropTypes.oneOf([SIMPLE, EDITORIAL_WORKFLOW]), publishMode: PropTypes.oneOf([SIMPLE, EDITORIAL_WORKFLOW]),
siteId: PropTypes.string,
}; };
static configError(config) { static configError(config) {
@ -87,6 +88,7 @@ class App extends React.Component {
onLogin: this.handleLogin.bind(this), onLogin: this.handleLogin.bind(this),
error: auth && auth.get('error'), error: auth && auth.get('error'),
isFetching: auth && auth.get('isFetching'), isFetching: auth && auth.get('isFetching'),
siteId: this.props.config.getIn(["backend", "site_domain"]),
}) })
} }
</div> </div>