Dev Spaces in SAP Business Application Studio
SAP Business Application Studio is a new IDE launched recently in SAP Cloud Platform. Like its predecessor, SAP Web IDE Full-Stack, it provides a cloud-based development environment. However, it also brings some new concepts into the game while redefining long standing ones from SAP Web IDE. In this blog I would like to elaborate about the Development Space (dev space) concept.
Dev spaces are the essence of SAP Business Application Studio. They are full-fledged development environments equipped with the runtimes and tools required for specific development scenarios. Each dev space is optimized for a specific development scenario. This means that it is delivered with a predefined set of tools we believe are required for this scenario.
A dev space is created in a click of a button and within a minute you have your environment up-and-running and you can start your development. No need to install additional tools or do some complex configurations, all you need is already preinstalled and preconfigured.
Currently, SAP Business Application Studio supports 3 development scenarios, more will come in the future.
The different tools and runtimes are available as extensions. Each extension can hold one or more tool and/or runtime. The content of each extension is mentioned in the extension description.
Picture 1: The list of tools provided with the MTA extension.
When creating a new dev space, you are asked to select from various development scenarios (i.e. dev space types). For each scenario, there is predefined list of extensions which are installed by default.
On top of the predefined extensions which you can see on the left, you can optionally add more extensions from the Additional Extensions list on the right.While you can add an unlimited number of extensions to your dev space, you should keep in mind that the more you add, the longer it will take for your dev space to load. So, add only the extensions that you really need.
Image 1: AppStudio Create a New Dev Space page,
predefined extensions listed on the left, optional extensions on the right
Once you click Create Dev Space, SAP Business Application Studio will spin up a (kind of) private virtual machine for you and install all the selected extensions into it. In a nutshell, under the hood, Kubernetes technology is used to provision and manage containers to create an isolated dev space. Once the dev space status turns to RUNNING, you can start your development.
Whenever you create a new dev space, the latest version of the selected extensions is installed. Extensions in existing dev spaces are updated automatically every time it is restarted, thus making sure you always use the most up-to-date version of the tools.
Dev spaces are completely isolated from one another, there is no way to access the file system and processes of one dev space from another dev space, even if both are owned by the same user. This level of isolation, together with the containers approach, enabled us to provide the long-requested terminal access and the ability to run almost any command as if you are working on your own laptop.
Unlike your laptop, dev spaces are also disposable. If, for some reason, your dev space is messed up, you can always create a new one and easily move your projects to it by downloading them from one and uploading them to the other. Having your projects always in sync with their Git repositories will make it even easier to switch between dev spaces.
To save on resources, dev spaces are stopped after 3 hours of inactivity (1 hour in Trial). Don’t worry, your dev space, including all the files it contained, will be restored once you start the dev space again. However, processes like applications or jobs you were running during your development, will have to be restarted manually.
Dev spaces will be preserved as long as your subscription to SAP Business Application Studio is in place and of course, if not explicitly deleted.
You can create up to 10 dev spaces and have 2 of them running at the same time. In trial accounts you are limited to total of 2 dev spaces and only one running at a time.
To sum up, the dev space is a key concept at the heart of SAP Business Application Studio. It brings a new development experience with a new range of capabilities. New development scenarios are coming up soon, as well as advanced features around dev space handling. Stay tuned.
For more information about SAP Business Application Studio have a look at the following info-blog.
Great blog, Thanks for that!
Suddenly my dev space is not starting .It shows this Error:
I created new dev space) that is also not starting and giving same error. Please let me know if u know the possible reasons and resolutions.
And can u tell where can we access the downloaded dev space? does it get saved on local pc?
Thanks in advance
How disappointing that BAS is down again. This is the main issue with cloud software. We are relying on cloud systems to do our work and these systems are proven by SAP to be unreliable. Give me software I can run remotely on my PC anyday. Shame really.
i think this is what SAP are against:
shell.cloud.google.com where all you need is gmail and up to 50 hours of a decent terminal experience is yours.
it's so good that AWS had to come up with their own shell tool recently, too: console.aws.amazon.com/cloudshell/home but i think they will ask for your credit card number if they haven't already.
still, i come to SAP for HANA and appreciate the Web IDE service however long it's freely made available for:
webidecp-<confusingstring>.dispatcher.us1.hana.ondemand.com and it's been quite stable and reliable.
no cloud without internet, though, is there?
I'm very sorry for the instability you face. Can you share some details on the landscape you are using so we can take a closer look?
Thank you for taking the time to respond.
BAS was down all day Saturday 23 Jan and possibly for longer https://339571aetrial.eu10cf.trial.applicationstudio.cloud.sap/index.html
It was back up on Sunday 24 Jan. But down again a late Sunday. It is up again now. I suspect there is some maintenance going on, but there is no warning or any notice. The cloud services status page was showing all services as green. The DEV space stays stuck on "STARTING". Below is the screen I am referring to except that it is now RUNNING again. This is not just my isolated issue. I was taking part in a learning session and all participants had the same issue. The issue was also present on paid subscriptions.
Sample image showing screen referenced
Thank you again.
Thank you for sharing. The issue has been fixed.
It was caused due to a transition to the new file system solution which should increase the dev space performance and open up additional possibilities for the future.
For additional questions/issues, please ask a question here.
Sorry for the inconvenience.
My dev space doesn't change the status in running after 20'.
My dev spaces switch to stopped after some starting attempts too
I created the second dev space but got the same result
How multiple developers work in BAS?Do they need to create multiple dev spaces?
A dev space is a personal development environment, just like your own laptop. So yes, multiple developers create multiple dev spaces. In case the developers are working on the same project they should manage their shared source code using source control (git).
For multiple developers working on the same project is there a step-by-step guide? or everything relies on git-based stuff.
Thanks in advance,
We highly recommend using a source control (git) for managing your source code, whether you work alone on your project or with multiple developers. Using a source control will keep your work backed up with version tracking, enable branching, etc.
There is no other tool in BAS for joint work of multiple developers on same project.
BAS is a new product and there's some bug which SAP is working on following problem.
I've been noticing couple of things,
I am facing the same issue. Is your issue resolved?
It's been restored. Please check.
Hello Nachshon Vagmayster , How do you manage the different environments for example DEV, QAS and Production in the dev spaces.
¿What is the best practice to manage the different environments in Business Apllication Studio?
I'm not sure what is the use case where you would like dev spaces to reflect your dev, qa, prod landscapes. In any case you should not do that.
In a nutshell your code should be managed in a source control system like git which is the right tool to manage source versioning. Business Application Studio has a built in support for git.