Giter Club home page Giter Club logo

sapper-on-cloud-run's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

sapper-on-cloud-run's Issues

Question: Sapper Environment Variables for SSR in CloudBuild/CloudRun

Mike, your blog article was really helpful! My sapper app connects to a database and uses some other secrets. I understand that I should use Google Cloud Secrets Manager for most of the secrets, however, for some things I still want environment variables. (I figure, for now using envs is simpler since I'd need to set up IAM and all that for my app to use secrets manager).

My rollup.config.js does something like this:

const processEnv = {
  "process.browser": true,
  "process.env.NODE_ENV": JSON.stringify(mode),
  "process.env.APP_SECRET": JSON.stringify(process.env.APP_SECRET),
  // ... more
};

export default {
  client: {
    input: config.client.input().replace(/\.js$/, ".ts"),
    output: { ...config.client.output(), sourcemap },
    plugins: [
      replace(processEnv), // <---- this

So, these variables would need to exist during the Cloud Build phase, then they get hardcoded into the code which is sent over to Cloud Run. So, using the environment vars in Cloud Run wouldn't work, unless I didn't use the replace() plugin for production builds.. so I suppose that's an option.

Either way, I'm curious how you handle these cases or if you already have some code you could add into this boilerplate? Just like in your guide, my project simply uses a Dockerfile, not a cloudbuild yaml.

Another question too, do you normally run DB migrations from your Dockerfile during Cloud Build as well?

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.