Skip to content

Instantly share code, notes, and snippets.

@hoang-innomize
Created November 12, 2019 03:24
Show Gist options
  • Save hoang-innomize/38dfbfa5c29a44fec072de004be8d57c to your computer and use it in GitHub Desktop.
Save hoang-innomize/38dfbfa5c29a44fec072de004be8d57c to your computer and use it in GitHub Desktop.
An example of using Serverless Component to deploy a static website
const { Component } = require('@serverless/core');
class Website extends Component {
async default(inputs = { env: 'dev', name: 'my-site' }) {
const template = await this.load('@serverless/template', inputs.env);
const output = await template({
template: {
name: inputs.name,
admin: {
component: '@serverless/website@4.0.0',
inputs: {
code: {
src: 'dist',
root: './'
},
env: {},
region: `us-east-2`,
bucketName: `sls-${inputs.env}-domain-com`,
domain: `sls-${inputs.env}.domain.com`
}
}
}
});
return output;
}
async remove(inputs = { env: 'dev' }) {
const website = await this.load('@serverless/template', inputs.env);
await website.remove();
return {};
}
}
module.exports = Website;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment