When developing your own integration components for the elastic.io platform, you need to structure your work into Git repositories. Each repository represents an integration component and gets used to push your local code to elastic.io remote server. Every push results in a new deployment of the component.
The access to the component repository is restricted to a team the repository belongs to. Each member of the team can change, configure and deploy a component. The team itself belongs to an organization and so only members of the organization can be invited to the team.
In this guide you can learn how to:
A developer team controls access to the component repositories belonging to that team. The team members may collaborate on common integration component in integration projects.
To create a new developer team navigate to the Developers section and click on a button + Create new team:
Please note: use letters, digits,
_ to name your team. No spaces!
After creating the team you are automatically becoming the member of that team.
You can proceed to either creating your first repository in this team and push your custom component or you can invite your fellow developers into the same team to collaborate in the development of that particular component.
To invite your colleagues into your development team to work on the same custom component click Invite developer drop-down:
Picture above shows a team with already invited developers and the drop-down menu with a possibility to invite more developers to the team. When you invite a developer to the team they receive an e-mail inviting them to join the team.
Please note that you can only invite members of the current organisation to this developer team. The drop-down menu shows all the possible members that can be invited to this current team.
You can skip to the integration component repository creation section from here. Otherwise if you need to delete a developer team continue to the next section.
If you need to delete a developer team:
If the above conditions are true, you can proceed and delete the developer team using an API call.
Almost every developer has worked with some sort of version control and repository management. GitHub, one of the most famous code developing and collaborating platforms, is the most famous for its use of repository practice. We use the same tactics which give developers complete autonomy to manage their code.
Please remind your fellow developers to follow the same procedure and upload their own unique SSH Key before proceeding further.
As mentioned above, each repository represents a component. That’s why we use repository and component terms interchangeably here. Every component resides in a particular repository. To create a repository click on New repo button and input the desired name and press Create.
Please note: As with the naming of the teams use letters, digits,
_ to name your repository. No spaces!
In this particular example, the name of the repository is
salesforce-acme and it belongs to the
acme-production team. This screen shows the further instructions and guidelines on how to proceed further. Here are the necessary steps for the clarity:
git clone https://github.com/elasticio/hello-world-nodejs.git salesforce-acme cd salesforce-acme
git remote add elasticio email@example.com:salesforce-acme.git git push elasticio master
Here is how the main Development page would look like after the deployment of your custom component:
To manage your repository click on the name to see the following page with details:
This is the URL that you can push the code for deploying the updates.
Please note: the cloning of your repositories is not supported. To update the code push it again to create the next version of it. Please contact our support if you need the copy of your repository.
You can set all environment variables for this particular repository by following the link. Consult our documentation on How to define environment variables for integration components.
This feature gives a possibility to set the component as Private, Public and Global:
Here is the deployment history of the repository containing: