Contributing your first recipe - SAP/apibusinesshub-integration-recipes GitHub Wiki
This is not a place for wikis, blogs, or end-to-end scenarios. This repo focuses on code snippets. Each recipe is 'task sized'. It can be any routine coding task that an Integration Developer needs to perform.
-
Ensure Intellectual Property safety (yes it's getting repetitive, but is important). Be sure to publish original content that does not belong to or have references to intellectual property belonging to your employer, customer, partner or anyone else. It's okay if you have already published your original content before on another platform in the public domain. Also have a read of our licence
-
Ensure you have read Integration Flow Design Guidelines on help.sap.com and your sample code complies with these guidelines.
- A topic, which could be:
- A frequent question with code as an answer.
- A blog you wrote with code in it. (tip: a typical end to end scenario blog will yield 2 to 5 recipes)
- A topic requested by the community in the issues
- A git hub user. If you don't have one, please sign up
- A git client. This is useful if you would like to make changes on your local system then submit it into the github repo. We recommend installing Git Hub Desktop for its simplicity.
Step | Action | Description |
---|---|---|
Fork the repo | how to fork a repo? | Forking the repo creates a copy of the repo in your account. You have full control over this forked repo. Changes to the forked repo can be pulled into the original repo. |
Create recipe folder | Folder path should be 'cloud-integration-flow/Recipes/for/do-some-code-thing/' | In your forked repo, create a folder to put all content relating to the recipe. (Tip: Best folder names that look like <verb>-<object> ) |
Copy all supporting artifacts | Copy everything that you need for your recipe in the folder. Some files you should consider uploading are integration flow zip files, sample input or output files, screenshots (of integration flow layout (the BPMN diagram), input screen, output screen, code snippets) etc. (Tip: you can always come back and add more files if you forgot some.) | |
Unzip all zip files | Legal Requirement You need to unzip all zip files in folders with same name as the zip file in your recipe folder | |
Create readme.md | Copy readme.md template and save to file named readme.md | All recipes need to have a readme.md with a similar format. The template reduces the effort by pre-writing the markdown code, you only need to add your content. (Tip: most editors have a markdown previewer where you can see how your recipe will look while you update the readme.md; for Atom use CTRL+SHIFT+M to invoke previewer ) |
Give the readme.md a title | Search for 'title- do-some-code-thing' and replace with your recipe name in readme.md; | You should get 1 hit. The readme.md now has a title in line 1 |
Update Menu links | Search for 'escaped-do-some-code-thing-%20' and replace with the recipes name but without any spaces; please use '-' or '%20' in place of spaces. | In line 3 you have customized links for users to raise enhancement, bug fix, documentation fix requests on your recipe. With this step, any issue a user raises via this page will automatically identify this recipe. The text that you replace is the identifier so please chose this text carefully. |
Enter your details as an author | Search for 'author-name' and replace with your name; Search for 'author-profile' replace with your github.com profile | You will have 2 hits on each search term. On line 5 of the readme.md, your profile picture and your name will now be displayed. ( Tip: upload your picture on your GitHub profile and it will reflect on each recipe you post) |
Fill out the recipe as per template | The rest of the template is self descriptive. Some general rules to follow, any-text-like-this is meant to be replaced with your content. Please do not duplicate headings or sections (line starting with #). Please do not change the sequence of any content. You can have multiple instances of any single template line (except headings) as needed. | |
Commit, Push | Submit content into your forked repo | |
Submit a pull request | creating a pull request from a forked repo | |
Keep your fork synced | Keep your fork updated with master | If you need to update your recipes at a later date, it helps to keep your fork synced so that you can submit without any merge conflicts. |