Skip to content

Latest commit

 

History

History
79 lines (42 loc) · 5.98 KB

prerequisites.md

File metadata and controls

79 lines (42 loc) · 5.98 KB

Prerequisites

These prerequisites are essential to a successful CodeJam. As an attendee, please ensure that you have worked through all of them and set things up before the day of the CodeJam event itself.

SAP BTP account

You must have an SAP BTP account. If they're still available, an active (unexpired) trial account will be fine. Otherwise you may wish to set up a new global account to take advantage of the Free Tier offerings.

Either way, it's important that you have the Global Account Admin role, which is in the "Global Account Administrator" role collection (see Role Collections and Roles in Global Accounts, Directories, and Subaccounts [Feature Set B] for more details).

It's also important that the account has Feature Set B Cloud Management Tools. You can check this from the BTP Cockpit using the "About" option which will show something like this:

The About popup showing Feature Set B

If you don't have an account right now, you can get one by following the instructions in this tutorial: Get an SAP BTP Account for Tutorials.

Subaccount and Cloud Foundry environment

In your account, you must have a subaccount with a Cloud Foundry environment set up. This is an environment that's available in the free tier. Make sure the environment is created and you have an organization and space within it.

If you need to do this, use the Enable Cloud Foundry button in the SAP BTP Cockpit, selecting the "standard" plan (or another free one if it is available):

Enable Cloud Foundry button

Then, once the environment is created (it will have asked you for the name of an organization which it will automatically create), use the Create Space button to create a space. If you're stuck for a name, use "dev":

Create Space button

If you still have a trial account, the subaccount that was set up automatically may already have a Cloud Foundry environment set up already, with an organization and space, and you can use that.

SAP Business Application Studio

Your account should have a subscription set up to the SAP Business Application Studio (App Studio). If you have a trial account then this subscription may already be set up for you. Otherwise, use the BTP Cockpit to find the entry in the Service Marketplace and create a subscription manually, with the "free" plan (see Application Plans for more info).

You should end up with something that looks like this:

subscription to App Studio

If you see an "Access Denied" message when attempting to access the App Studio, then you are most likely missing some role collection assignments. If this is the case, go to the Security section in the SAP BTP Cockpit and assign the following role collections to your user (remember to sign out and sign back in again for this to take effect):

  • Business_Application_Studio_Developer

You may also assign yourself any other App Studio related role collections, but this one is the key role collection that you need.

If you're using a trial account, you can get to the SAP Business Application Studio from a link directly on the trial landing page:

Link to BAS from trial landing page

More generally, you can find a link to the SAP Business Application Studio from the list of "Instances and Subscriptions" in your subaccount, as shown here:

Link to BAS from instances and subscriptions

A Basic Dev Space set up

Within the App Studio you should set up a "Basic" Dev Space ready for the CodeJam.

When setting this up, please make sure you have the "MTA Tools" extension as part of that Dev Space. It used to be an optional extension in the "Additional SAP Extensions" list but now it should be included in the "SAP Predefined Extensions" list. This "MTA Tools" extension will give you the cf command line tool, amongst other things.

Give the Dev Space a name, and hit "Create Dev Space".

Creating a Basic Dev Space

Docker Desktop

As an alternative to using a Dev Space in the SAP Business Application Studio, you may wish to follow along in a container instead. This is purely experimental and there is no explicit support for this just yet, but if you want to try it, instead of using a Dev Space, please feel free to do so, and provide any feedback and tips for improvements via the normal route (issue or pull request on this repo).

If you do want to take this experimental route, you'll need a container runtime. While the license for Docker Desktop has changed (see Docker is Updating and Extending Our Product Subscriptions for an overview) it's still free for personal use. You may find success with other container runtimes such as Podman, but that's currently beyond the scope of what is offered here.

You'll also need to follow the instructions in the container/ directory of this repository.

Knowledge and experience

From a knowledge and experience perspective, the following is useful but not essential:

  • Some general experience of working on the command line, or at least an appetite for it
  • Some general experience in seeing data in JSON format
  • A general idea of the structure of BTP resources such as subaccounts, directories, entitlements, regions and environments
  • A general idea of how RESTful APIs are structured and called
  • An awareness of shell scripting, using the Bash shell in particular