Staging using project.js and config.js


#1

I am trying to understand how to deploy various version of file, i tried following instruction online but they are seems to be old and with Jovo 3 not working. I see no failure but nothing gets deployed. I am trying to set 3 config file, local,qa and prod and based on project.js i want to choose correct config file for db. Now project.js deploys correct code for qa and local skills but i am unable to link config file which it can use, when i have new DyanamoDB() in code its always trying to execute that and fail. Now i can comment and get it working but just trying to see how to use it in proper way and how to use correct config file. I did set .env also…

module.exports = {
stages: {
  dev: {
    endpoint: '${JOVO_WEBHOOK_URL}',
    alexaSkill: {
      skillId: 'amzn1.ask.skill.1988aeea-f33e-40c3-bf46'
    }
  },
  test: {
    alexaSkill: {
      endpoint: '${JOVO_WEBHOOK_URL}',  
     skillId: 'amzn1.ask.skill.9b105a08-374a-4c7c-b812'
    },
    googleAction: {
      dialogflow: {
        endpoint: 'some-api-gateway-endpoint'
      }
    }
  },
  prod: {
  }}
}

#2

For app configuration staging, you need to make changes to the config.js (you’re displaying the project.js, which is only relevant for project-specific stuff).

Take a look here: https://www.jovo.tech/docs/staging#app-configuration-stages

We also recently fixed a bug with app config staging, please run jovo update and try again.


#3

@jan i did made changes in config file, i have config file for dev and test. The thing i am asking is, how does project.js knows which file to check? Do i have to do anything? Because when i am doing dev or test deploy it doesn’t take correct config file. You can see below 2 separate config file named ask config.js and config.test.js


#4

Did you add the stage to the environment variables on Lambda?

It’s explained at the bottom of the link that I shared: https://www.jovo.tech/docs/staging#app-configuration-stages


#5

yes i did… but it was still taking my filedb instead of dynamodb.


#6

Did you update to the latest Jovo version?


#7

Yes i did try that but now getting different error. If you look at screenshot i do have pause intent under AudioPlayer but it still fail with that error. Plus one more error askAPIUpdateModel error, not sure what is that.


#8

Does your language model contain the AMAZON.PauseIntent?


#9

Thanks @rubenaeg ,
That helped, i was able to deploy. Does this only deploy skill and i have to deploy lambda function differently? I have the arn endpoint specified in project.js but it only deploy skill, based on console it skipped lambda deployment.