Създаване на добавка Heroku

Бих искал да интегрирам облачната си услуга в Heroku като добавка. Прочетох наличните уроци как да направя това, но все още не е ясно. https://devcenter.heroku.com/articles/building-a-heroku-add-on#provisioning

Не можах да разбера ролята на приложението, което създаваме от шаблон (например Синатра) с помощта на kensa. Това междинно нещо ли е между Heroku и облачната услуга?

Благодаря предварително.


person user3242743    schedule 30.06.2014    source източник


Отговори (2)


Всъщност Heroku се нуждае от 2 неща:

  1. addon-manifest.json file where described all information needed for Heroku. And this json file contains 2 important urls:
    • 'base_url'
    • 'sso_url'
  2. Приложение, което ще сървърира специфичен за heroku API и ще отговаря със съответния JSON на заявки за предоставяне/депровизиране/планиране. Тези заявки сочат към „base_url“.

Така че, ако притежавате своя код за облачна услуга и можете да добавяте нови крайни точки на API, тогава нямате нужда от приложение, базирано на kensa-template: добавете необходимите API контролери директно в услугата.

Но ако не можете да надстроите облачната услуга, тогава сте прави, kensa-template е готов за използване с heroku intermediate.

В случай на шаблон на sinatra, просто трябва да поставите необходимите API извиквания към вашата облачна услуга в метода „# осигуряване“ на файла app.rb, да разположите някъде приложението и да направите „kensa push“ за вашия addon-manifest.json (don;t забравете да актуализирате base_url до вашия)

Късмет!

person Proffard    schedule 30.06.2014
comment
Благодаря много за отговора. Но какви точно са крайните точки на API, които трябва да внедря в моя код на облачна услуга? Само заявките за предоставяне/депровизиране/промяна на план? - person user3242743; 30.06.2014

Минимум API маршрути за добавка heroku въз основа на вашата облачна услуга:

  • POST заявка до '/heroku/resources' - за осигуряване
  • ИЗТРИВАНЕ на заявка до '/heroku/resources' - за депровизиране

Ако наистина искате да го продадете на потребителите на heroku, тогава трябва да направите повече неща:

  • добавете поддръжка за heroku single sign-on това е още един API route: POST към '/heroku/sso', но можете да го промените във файла addon-manifest.json.
  • PUT '/heroku/resources/:id' за заявка за промяна на плана. Имайте предвид, че ':id' е идентификатор, който сте предоставили heroku в отговора си по време на предоставянето.

Ако внедрите SSO, тогава потребителят може да щракне върху вашата добавка на страницата с ресурси на екземпляра на heroku и да пренасочи директно към вашата услуга, като заобиколи всички форми за влизане. Можете да покажете само кратка информация за ресурса на потребителя в страницата след SSO.

person Proffard    schedule 30.06.2014
comment
Променя ли се процесът на осигуряване, когато използваме Single Sign-on (SSO)? Благодаря - person user3242743; 01.07.2014