atlassian-connect-express 8: execute own code after app installation

Hello!

In this article we will talk how to execute your own code after somebody installed our app to Bitbucket.

This article is based on this one.

You can find the source code here.

You can watch the video for this article here.

Out of the box our app contains the following rest endpoint:

app.post('/installed', (req, res, next) => {
  req.body.baseUrl = req.body.baseApiUrl;
  next();
});

That is why you could think that it is just easy to add your code to this endpoint and everything will be fine. But it is not true. You never now know if your app was installed successfully or not by the installed endpoint within the atalssian-connect-express framework itself.

That is why you need to use the host_settings_saved event (you can find all events here).

To use the event add this code to backend/app.js:

addon.on('host_settings_saved', function(clientKey, data) {
    console.log('host_settings_saved')
    console.log(clientKey)
    console.log(data)
});

We can see that the event accepts clientKey and data. Data is the json which comes with the install request from Bitbucket. The same json you can find in the AddonSettings table for the client.

Now let’s install our app again and have a look at the logs:

host_settings_saved
connection:4192974
{
  productType: 'bitbucket',
  principal: {
    display_name: 'Alexey Matveev',
.....

Which means that the event was called and now we can execute our own post installation actions.

One thought on “atlassian-connect-express 8: execute own code after app installation

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: