Photo by Fabio Comparelli on Unsplash

Primeiros passos utilizando o SAP Cloud Platform — SCP

Uma jornada de aspectos básicos do SCP até o Deploy de uma aplicação NodeJS

Erick Carvalho
Bar8
Published in
19 min readDec 26, 2018

--

E aweeeeee meu povo!!!!

E mais um ano que passou, o que significa que temos mais um ano de novas tecnologias e desafios. Tenho alguns planos e algumas novidades para 2019, e essas novidades envolvem utilizar cada dia mais o SAP Cloud Platform (SCP) por aqui, e se você acompanha o Bar8 nesses últimos anos sabe que não iniciamos nenhum assunto sem antes ao menos dar uma base sólida para o que pretendemos alcançar.

Então hoje veremos os controles básicos do SAP Cloud Platform e, em seguida, vamos nos preparar para realizar um tour pelo cockpit do SAP Cloud Platform, além de realizar deploy de uma aplicação.

O que é o SAP Cloud Platform (SCP)?

O SAP Cloud Platform é um conjunto de Aplicações, Plataformas e Infraestrutura oferecidas como Serviço. Esses serviços ajudam muito principalmente quando é necessário criar e/ou estender aplicações para ambientes SAP.

Hoje com o SCP é possível trabalhar com diversas tecnologias e linguagens de programação, e em especial com ABAP, que já foi alvo de muita discussão se morreria ou não, e com o SCP podemos afirmar que a linguagem segue firme e forte.

Veja mais sobre essa discussão aqui no Bar8 acessando o link abaixo:

Além disso o SCP nos fornece suporte para o desenvolvimento de sistemas, nos permitindo criar landscapes com ambientes de teste e produção.

O que tem mais me empolgado em trabalhar com o SCP é a variedade de serviços disponíveis, principalmente quando o assunto é relacionado a suíte de aplicações do Leonardo, e é um assunto que deveremos tratar aqui no Bar8 em breve.

Um ponto que é positivo, mas delicado ao mesmo tempo, é a constante evolução que o SCP vêm sofrendo. Existe um risco enorme deste post ficar ultrapassado muito rapidamente.

E apenas para relembrar, existem outras opção de plataformas. Eu citei no meu último post fazendo menções sobre Google Cloud Platform (GCP), AWS e Heroku, que são três plataformas na nuvem, e que mais utilizei em 2018. Se quiser saber um pouco mais sobre você pode ler em:

O que significa SaaS, PaaS e IaaS e como eles funcionam?

Como você já percebeu mencionei que o SCP funciona como serviço, se você não entende muito bem o que isso significa, pode conhecer mais aqui:

O que são serviços e onde posso saber mais sobre eles?

Entendido o que é SaaS, IaaS e PaaS temos que o SCP é capaz de nos fornecer SaaS e PaaS. Essa combinação de PaaS e SaaS fornece todas as ferramentas necessárias para trabalhar em conjunto com as demais suítes de aplicações SAP (S/4 Hana, C/4 Hana e etc.)

Como exemplo, abaixo temos uma imagem apresentando diversos serviços da SAP:

Everything as a Service

Todos os serviços acima podem ser rodados em aplicações desenvolvidas de dentro do próprio SCP e é onde se encaixa o PaaS.

Existe a possibilidade de utilizar a SCP como IaaS também, entretanto não tenho conhecimento de como isso funciona ou de clientes que já utilizaram esse tipo de serviço.

Neo e o Cloud Foundry

Assim que acessamos o SCP vemos que existem dois ambientes de PaaS: Cloud Foundry e NEO

Vamos falar primeiro daquele que está lá desde sempre, este é o ambiente chamado Cloud Foundry.

Cloud Foundry é um projeto e padrão de código aberto, executado pela Cloud Foundry Foundation (e antes disso, a Linux Foundation).

Ela funciona com a SAP implementando o Cloud Foundry no SCP, usando servidores em data center de terceiros como AWS, Azure e Google Cloud (como é possível ver na própria imagem). Deixarei mais detalhes para quem quiser conhecer nos links de referência.

O outro ambiente é chamado de Neo. Se o outro ambiente é utilizando data center de terceiros esse aqui é um ambiente mantido e suportado pela própria SAP.

O ambiente Neo permite desenvolver aplicativos e e serviços. Você também pode usar o UI Development Toolkit para HTML5 (SAPUI5) para desenvolver interfaces.

Qual o ambiente ideal para você?

Muito recentemente passei por essa questão e a resposta não é muito simples. Os serviços mais interessantes para mim ainda estão disponíveis apenas no Cloud Foundry (serviços relacionados a Machine Learning e IoT por exemplo), mas o movimento que vejo é que com o tempo a maior parte dos serviços deverão ser movidos para o Neo.

A questão que passei tratava-se uma parceria com a SAP, onde se utilizássemos o ambiente Neo teríamos um determinado período sem custos para utilizar o ambiente para desenvolvimento e apresentação. Então estamos utilizando este ambiente, e pagando por alguns outros serviços do Cloud Foundry, mas que independente de qualquer coisa, já tem ajudado bastante.

SAP Cloud Cockpit

Conseguimos acessar os cockpits do SAP Cloud Platform acessando:

As coisas mudam muito rápido no SCP, entretanto até aqui
a SAP têm nos oferecido uma forma gratuita do SAP Cloud Platform também para estudos e experimentação.

Acessando com uma conta trial teremos acesso a ambos os ambientes Neo e Cloud Foundry para teste. Até onde se tem conversado o ambiente Neo é uma avaliação gratuita que nunca expira, o ambiente Cloud Foundry tem o tempo determinado de 90 dias para teste, entretanto é possível renová-lo quantas vezes desejarmos.

Já dentro do SAP Cloud Platform veremos que é utilizado dois níveis de contas: Contas globais e Subcontas.

Uma conta global é a conta principal da sua organização ou equipe. É a área central de todos os recursos. A conta global não é acessada diretamente, ela apenas funciona como um “guarda-chuva” ou um contêiner para todas as subcontas.

As subcontas são criadas pela conta global e podem ser usadas para subdividir recursos. Cada subconta tem um nome distinto.

Como usarei uma conta trial para este post não conseguirei demonstrar tão bem alguns detalhes, pois contas trial possuem uma única conta global e uma única subconta, entretanto é importante desde já saber como isso funciona quando você estiver em uma empresa, e acessar o cockpit se deparar com várias subcontas.

Confesso que esta parte ainda está um pouco abstrata para mim sobre como as empresas deverão se organizar, pois os clientes que tenho trabalhado ainda não têm adotado o uso do SCP.

Mas uma conta possui uma espécie de "cota de recursos" que terá acesso, e com as subcontas são uma forma de dividir essa cota. Assim fica mais simples controlar o quanto de recurso cada subconta necessita, e qual serviço está necessitando de mais recurso.

Criando uma conta

Este passo é para você que ainda não possui conta. Caso já possua, pode pular para o próximo tópico que é: Navegando no SCP.

Vamos acessar o endereço:

Então clicar na opção destacada na imagem abaixo:

Clique em Free Trial

Então você deverá ser redirecionado para outra página

Clique em Submit e então você deverá receber um e-mail para ativar a conta

Navegando no SCP

Vá se acostumando com essa tela:

Este é o cockpit SCP. E é o ponto central quando estamos utilizando-o para desenvolvimento.

Vamos clicar no ambiente NEO primeiramente para explorar mais opções, dessa forma você deverá ser levado para a seguinte tela:

A seção Status do sistema, na página Visão geral, dá uma rápida visão sobre os nossos aplicativos.

É possível fazer deploy de aplicativos em diversas linguagens e até mesmo de banco de dados no SCP. Então aqui é uma forma rápida para saber se algum crash aconteceu nos seus apps. Além de ter uma visão geral de todos seus aplicativos, se estão iniciados ou parados.

Lembrando, este recurso estará disponível desde que tenha sido utilizado o ambiente NEO para o deploy. Para o ambiente Cloud Foundry existe um outro painel para acompanharmos nossas aplicações.

Status do Sistema

No painel do lado esquerdo, é possível ver maiores detalhes dessas aplicações. Então por exemplo vamos navegar para Applications> HTML 5 Applications

Applications > HTML5 Applications

Vamos criar uma aplicação apenas para teste, e poder acessar outros controles do SCP, mas a ideia aqui nesse momento é apenas entender onde estão os controles.

Clique em New Application > preencha o nome da aplicação apenas com letras minúsculas > Salve
Deveremos ter algo assim

Vamos clicar no nome da nossa aplicação, para então poder acessar controles mais específicos da nossa aplicação

Aqui encontraremos informações específicas sobre o aplicativo. Como por exemplo o consumo de recursos, atualizar a versão, encontrar o URL do aplicativo e muito mais.

Vamos voltar a tela inicial do ambiente NEO, e então vamos explorar um pouco mais o que o SCP pode fornecer para os nossos aplicativos.

Services

E a agora a minha parte predileta no SCP: Services

Aqui acredito que ficará claro a diferença em quando utilizar os ambientes Cloud Foundry e o NEO.

No ambiente NEO o único serviço que tenho utilizado é o do Web IDE, quando preciso realizar um deploy de uma aplicação, pois durante o desenvolvimento ainda tenho preferido utilizar o VSCode localmente. Para encontra-lo basta digitar web na barra de busca, como na imagem abaixo:

Perceba que existem duas opções. A versão que não é Full-Stack não deverá mais estar disponível em 2019 — Como havia comentado, as coisas no SCP tem mudado todo dia.

Entretanto no inicio desse tópico eu havia comentado sobre essa ser a minha parte predileta do SCP. Disse e assumo! Mas não disse que era minha parte predileta utilizando o ambiente NEO.

Vamos voltar ao inicio e agora acessar o ambiente Cloud Foundry.

De volta ao inicio, vamos acessar o ambiente Cloud Foundry
Importante: Como é a primeira vez que você está acessando o ambiente será necessário escolher um servidor e então aguardar o setup. Este setup apenas acontece na primeira vez que acessamos o ambiente.
Caso não seja a primeira vez que você esteja acessando o ambinete Cloud Foundry você terá acesso a tela acima. Caso contrário após o setup da tela anterior, você será direcionado diretamente para a tela que mostro na sequencia. Mas de qualquer forma, acessando o ambiente Cloud Foundry logo você percebe que os menus vão mudar um pouco em comparação ao ambiente NEO. Caso esta tela seja exibida, vamos agora acessar a subconta trial.
Caso esta tenha sido a tela apresentada a você significa que isso é porque é o seu primeiro acesso ao ambiente. Você foi redirecionado para o nível mais baixo do ambiente. Vamos então voltar ao inicio do cockpit e então acessar: Ambiente Cloud Foundry > Subconta Trial (como na imagem anterior) > Overview

Na tela seguinte, é possível conferir a quantidade de novos serviços passamos a ter acesso, que não estão disponíveis no ambiente NEO:

Mas aqui é apenas uma referência, para ter acesso aos serviços de fato vamos ver nos próximos passos

No Cloud Foundry um ambiente de desenvolvimento para aplicativos é chamado de: Spaces.

Spaces normalmente contêm uma única aplicação (é possível possuir mais de uma aplicação, mas na minha experiência isso não ficou legal, por isso hoje prefiro trabalhar apenas com uma aplicação por space).

Muito semelhante a subcontas que havíamos conversado, cada space tem uma alocação de recursos da conta global (a conta global pertence à sua equipe ou organização). Esse recurso dedicado é chamado de quota pelo SCP e limita a quantidade de memória, o número de URLs (chamados de rotas) e outros recursos. Cada espaço é atribuído a um ou mais usuários (chamados de membros).

A sua empresa poderá criar espaços para projetos individuais e também criar espaços para produção, homologação e etc. Cada espaço é separado e isolado de todos os outros. #vivaContêiner

Entendido melhor como funciona parte do Cloud Foundry, vamos clicar em spaces, e então seremos levado para a seguinte tela:

Perceba aqui que como estamos em um ambiente que a infraestrutura não é exclusiva SAP, passamos a ter alguns limites. Ainda assim, com essas quantidades concedidas são o suficiente para fazer bastante coisa legal

Clicando no espaço DEV, seremos levado a seguinte pagina:

Vamos clicar agora em Services > Service Marketplace

Então chegamos ao paraíso dos serviços. Como é possível ver na imagem abaixo, aqui encontraremos serviços para projetos que envolvam Blockchain, IoT, Machine Learning e etc.…

Aqui sim é possível encontrar serviços que devem transformar as nossas futuras aplicações, e que certamente estarão em nossos futuros posts

Clique em qualquer um dos serviços para obter maiores detalhes e/ou para poder assinar o serviço e obter a sua própria instancia — Assinar um desses serviços será cenas para os próximos capítulos, hoje é apenas um overview.

Essa imagem remete a maiores detalhes do serviço de Machine Learning (ml-foundation-trial-beta)

Repositório e Documentação

Quando voltamos para o ambiente NEO temos opções interessantes para documentação e versionamento. Não vou entrar em detalhes sobre como documentar seus projetos usando o SCP ou como repositório Git, pois na minha breve utilização ainda tenho preferido utilizar o JIRA ou Trello, Confluence e Bitbucket para isto.

Entretranto, uma vantagem para quem gosta de trabalhar com o Web IDE, é que este repositório é integrado, sendo assim é possível navegar pelo versionamento do código utilizando o Web IDE.

Para acesso a esta área, basta navegar novamente para o ambiente NEO, e então será apresentado como na imagem abaixo:

A ferramenta funciona muito semelhante a outras ferramentas como Github, Bitbucket ou GItlab que possuem estrutura de repositórios.

Conectividade

Conectividade sem dúvidas é um excelente acelerador nos desenvolvimentos

Destinations: Irá nos ajudar a conectarmos a sistemas externos, sejam eles sistemas SAP ou não. Ele lida com o trabalho pesado em torno de autenticação, permissões e CORS para a maioria dos navegadores.

1. Aqui temos um resumo a partir de quando criamos uma novo Destino, que funciona como uma espécie de variável de ambiente mais avançada, pois o que está configurado aqui podemos utilizar no nosso código. 2. São ferramentas auxiliares muito úteis, com ela somos capazes de editar, clonar, exportar, deletar e a minha predileta teste de conectividade (esse tipo de recurso nos ajuda no processo de desenvolvimento). 3. Área de detalhes de cada destino configurado

Cloud Connectors: Ajudarão a nos conectar a sistemas SAP. É realmente muito útil utilizar essa opção quando precisamos extrair dados do SAP local durante o desenvolvimento de um aplicativo.

Segurança

Vamos clicar em Security >Authorizations como na imagem abaixo:

Apenas por curiosidade, perceba que no painel de status do sistema, agora temos uma atualização informando que possuímos uma aplicação e ela está parada.
Para atribuir uma função a um membro do time, primeiro selecione um usuário na lista de usuários. Em seguida, clique no botão Atribuir ao lado de Usuários individuais.

Aqui encontraremos todas as possibilidades para configuração de acesso, o que é muito útil quando você trabalha em conjunto com um time. Aqui somos capazes de configurar acessos de administradores para aplicativos distintos, e também acesso de desenvolvedor. O uso das Funções nas configurações de Segurança permite definir quanto acesso cada usuário ou grupo de usuários precisa.

No menu Trust por exemplo, somos capazes de definir as configurações da comunicação SAML (Security Assertion Markup Language) 2.0 entre o SAP Cloud Platform e os provedores confiáveis.

Esta área dificilmente será utilizada enquanto estivermos em uma conta trial, entretanto, para uma conta produção certamente será necessário utilizar.

Instalando o CLI — Command Line Interface

Como havia falado anteriormente no SCP o que mais tenho utilizado são os serviços do Cloud Foundry, e um recurso apenas disponível para o Cloud Foundry é a opção para trabalhar via linha comando. Isto realmente ajuda muito no dia a dia.

Então certamente usaremos o CLI em futuros exemplos, segue abaixo como configurar e alguns comandos básicos.

O download da versão mais recente do CLI para o seu sistema operacional é possível ser realizada no seguinte endereço:

E aqui todos os detalhes para ajudar na instalação:

Após instalado, vá ao seu terminal e então digite:

cf

E você deverá conseguir ter acesso a uma série de comandos e além disso a versão do seu CLI:

Instalado o CLI agora é hora de descobrir qual a região do seu Cloud Foundry para assim obter a nossa URL para acesso. Conseguimos isso acessando o seguinte link:

Ou mais simples que isso, quando acessamos o cockpit. Basta seguir o caminho como na imagem abaixo:

1. Acessando o cockpit do SCP vá ao ambiente do Cloud Foundry > Acessar a subconta (trial no nosso caso). Aqui você já perceberá que a segunda informação é referente a onde será a região das nossas instancias, mas é possível alterar a região caso você necessite, clicando no drop down list na frente do nome da região. 2. Clicando no drop down list será exibido uma lista com todas as regiões, entretanto é necessário acessar o link anterior para saber qual região conta possui disponibilidade. 3. API Endpoint é exatamente o endereço que necessitamos, e no nosso caso é o: https://api.cf.eu10.hana.ondemand.com

Agora que sabemos o nosso endpoint, vamos configurá-lo no nosso CLI. Basta fazer o comando abaixo:

cf api <URL>

Como na imagem abaixo, seguido do respectivo resultado:

<URL> no meu caso foi https://api.cf.eu10.hana.ondemand.com

Então aqui já seriamos capazes de efetuar o login por exemplo. Veja um exemplo na imagem abaixo:

Exemplo de login

Deploy de uma aplicação utilizando o Cloud Foundry

Agora já que já tivemos uma visão geral de como funciona o SCP, vamos a parte mais divertida, que é realizar o deploy de uma aplicação.

Abaixo irei descrever em alguns passos como realizar o deploy de uma aplicação NodeJS usando o ambiente Cloud Foundry então. Este exemplo é basicamente igual para qualquer tipo de aplicação, inclusive é assim que tenho trabalhado com SAPUI5, vamos aos passos:

  • Faça login utilizando o CLI:
Certifique-se de ter configurado o seu API Endpoint. Caso venha preenchido com algum endereço como na imagem, está correto
  • Clone o conteúdo do repositório git disponível no link do GitHub usando o comando:

git clone https://github.com/erickcarvalho/bar8-cf-exemplo01

Caso o comando falhe ou você não tenha o GIT instalado na sua maquina, é possível utilizar a opção de fazer download seguindo o seguinte:

Clique em Clone or Download > Download ZIP

Com a aplicação em sua maquina, abra o arquivo:

manifest.yml

Este arquivo é o responsável por indicar a configuração do contêiner durante a criação da instancia que será criada para a nossa a aplicação. Ele aberto possui as seguintes informações:

Atenção: Ao utilizar um arquivo .YML a indentação das propriedades são muito importantes e fazem toda diferença durante a interpretação do arquivo. Então cuidado ao editar, para não mexer na indentação.

Entendendo melhor as informações desse arquivo, vamos ver o que é cada um dessas propriedades que utilizei:

Buildpack — É o framework que utilizaremos em tempo de execução. Os buildpacks cuidam por examinar nossos aplicativos, e para gerenciar quais dependências baixar e como configurar os aplicativos para se comunicarem com serviços vinculados. Como estamos utilizando o NodeJS em nossa aplicação, ele utiliza o NPM.

Então trocando em miúdos buildpack é usado para compilar ou preparar seu aplicativo para a execução.

Como sei quais buildpacks o SCP está preparado? Simples, basta digitar no seu terminal:

cf buildpacks

E você deverá ter o seguinte resultado:

Aqui temos uma visão da quantidade de linguagens que passamos a poder trabalhar utilizando o SCP com o ambiente Cloud Foundry.

Voltando ao arquivo manifest.yml, vamos entender as propriedades.

Applications: Aqui iremos configurar name, command, memory e instances, sendo que:

  • Name: O nome da aplicação é sempre precedida de um traço. E este é o único atributo realmente obrigatório.
  • Command: Este ponto é específico do NodeJS. Você já pensou: Após subir meu código para a plataforma, como acontece o start? quem roda a minha aplicação? Pois bem, para que após a instalação da aplicação no SCP ocorra, precisamos criar um script para que seja possível colocar a nossa aplicação automaticamente no ar. As plataformas em geral já estão preparadas para rodar o script START em uma aplicação NodeJS. E este script configuramos no arquivo package.json da aplicação NodeJS. Veja abaixo:

package.json

Caso você tenha o NodeJS instalado na sua maquina, poderá testar executando: npm start (este comando executa o node app.js)
  • Memory: Quanto de memória vamos dedicar a essa instância da nossa aplicação. Neste caso estamos dedicando 256MB
  • Instance: Quantas instâncias serão dedicadas a essa aplicação, no nosso caso por se tratar de uma aplicação muito simples, vamos trabalhar apenas com uma instância.

Após ter feito a configuração referente a propriedade NAME do MANIFEST.YML vamos colocar a nossa aplicação no ar.

Existem duas maneira. A primeira utilizando o CLI que é como faremos hoje, mas é possível fazer direto pelo site.

Primeiramente, pelo site o caminho seria:

Acesse o ambiente Cloud Foundry
Acesse a subconta
Clique no menu a esquerda em Spaces
Acesse o espaço, que no meu caso é o dev
1. Na tela seguinte, será exibido as nossas aplicações, e mais um botão chamado: Deploy Application. Clicando neste botão será exibido um pop-up com dois campos: File Location, onde iremos informar onde está a nossa aplicação, mas para que isso funcione antes você precisa comprimir sua aplicação, como fiz com a minha deixando-a como .zip. E posteriormente informar o manifest.yml que configuramos anteriormente. E então clicaríamos em Deploy.

Eu particularmente não utilizo essa opção, justamente pelo trabalho de navegar até essa pagina, e além disso ter que zipar a nossa aplicação sempre antes de realizar o Deploy. Então abaixo eu apresento como eu faço normalmente:

Utilizando o seu terminal, acesse a pasta da sua aplicação. Como na imagem abaixo:

Certifique-se que ainda está logado no Cloud Foundry, e então execute o comando abaixo:

cf push <NOME DA APLICAÇÃO>

Você deverá alterar o nome da aplicação aqui, isso pois o SCP utiliza parte do nome para poder montar a URL de acesso da sua aplicação. Como estamos utilizando uma conta trial, as rotas são compartilhadas com todas as demais contas trial da plataforma. Então aqui altere o nome da aplicação que está bar8_cf_exemplo01 para SEU_NOME_bar8_cf_exemplo01, ou algo do tipo.

Importante saber que é possível controlar a criação de URL com os comandos random-route e host, entretanto como nosso exemplo é apenas experimental deixei para que o SCP cuide disso.

Pode utilizar o mesmo nome da aplicação que você configurou no arquivo manifest.yml. Este nome será para identificar a aplicação quando você acessar o painel de instâncias.

Um outro ponto muito importante é que o arquivo manifest.yml deverá estar neste mesmo diretório. Caso contrário é necessário informar o local do arquivo com o seguinte comando:

cf push -f <CAMINHO-DO-MANIFEST.YML>

Logo após o comando PUSH , você deverá ter algo assim:

Este é o final do log após a finalização do deploy. Perceba os pontos destacados em vermelho, eles são as informações mais importantes.

As informações acima podem ser acessadas com os comandos:

cf apps — Este comando irá listar todas as suas aplicações

cf app <NOME DA APLICAÇÃO> — Este comando irá lhe passar as informações mais importantes sobre a aplicação que você informou.

As mesmas informações que foram exibidas no final do log no terminal ou após usar o comando cf app, estarão disponíveis acessando o espaço DEV dentro do ambiente Cloud Foundry:

Clique no nome da aplicação
Nesta tela somos capazes de ter acesso a URL da nossa aplicação, mas além disso, podemos inserir mais instancias para nossa aplicação, ou dedicar mais recursos de espaço e memória. Além de ter acesso aos logs da aplicação.

Uma última curiosidade, no menu da esquerda, algumas opções muito úteis passam a ficar disponíveis também.

Service Bindings e Environment Variables certamente utilizaremos nos próximos posts. Mas uma área muito interessante é a de Events e Logs, elas mostram todo o comportamento da sua aplicação desde o momento do deploy e durante o período de execução.

Mas o que interessa nesse momento é ver a nossa aplicação no ar. Sendo assim vamos pegar a nossa URL, que como vimos um pouco antes é:

bar8-cf-exemplo01.cfapps.eu10.hana.ondemand.com

E então:

Aplicação no ar. Simples assim :)

É assim que tenho preferido realizar o deploy das minhas aplicações. Dessa forma tenho a liberdade de a qualquer momento trocar de plataforma, e além disso fica mais fácil para trabalhar localmente.

Deploy de uma aplicação utilizando o NEO

Vamos para a tela inicial do cockpit do SCP para que possamos acessar o ambiente NEO.
Dentro da subconta vamos a área de serviços
Vamos buscar por SAP Web IDE, e vamos acessar o serviço que está disponível
Se aparecer esta tela, vá em “Go to Service”
Uma tela como esta deverá ser exibida para você. Então agora temos a opção de criar uma aplicação, ou importar uma aplicação já existente.

Para facilitar o trabalho já criei uma aplicação em SAPUI5, que é possível acessar no seguinte link:

Caso você tenha optado por utilizar a aplicação que estou disponibilizando, não será necessário realizar nenhuma modificação no código. Apenas precisaremos compacta-la para então importar no SCP utilizando o Web IDE.

Clique com o botão secundário em cima da pasta Workspace e escolha a opção Import > From File System
Um pop-up deverá ser aberto e então poderemos escolher o caminho de onde está em nossa maquina o nosso arquivo compactado, e logo em seguida escolher o caminho que desejamos dentro do nosso Workspace do Web IDE (Neste caso o próprio Web IDE irá sugerir um caminho, e vamos optar por aceitar nesse momento)
Aplicação importada vamos executa-la apertando o botão destacado em vermelho
Após execução, essa deverá ser a tela que você terá acesso

Agora que sabemos que a aplicação está funcionando sem problemas, vamos realizar o Deploy da aplicação.

Voltamos ao Web IDE, e então agora clicamos com o botão secundário sobre o projeto que acabamos de importar. Logo em seguida escolhemos as opções: Deploy > Deploy to SAP Cloud Platform
Será exibido o pop-up acima, então escolheresmo as seguintes opções: 1. Deploy a new application. 2. Accountjá deverá vir preenchido com o seu usuário. 3. Project Name já deverá vir preenchido. 3. Application Name é o nome que fará parte da URL da sua aplicação, já virá uma sugestão, e nesse caso podemos manter a sugestão. 4. Version já deverá vir preenchido com uma sugestão, e nesse caso vamos manter. 5 Clique em Deploy
Após o Deploy concluído um pop-up será exibido com opções de atalhos para navegação o endereço da aplicação que acabou de ser feito o deploy e também para a administração dessa aplicação. Além disso, se você está em um ambiente que possui o Launchpad Fiori integrado é possível registrar sua aplicação para já ficar disponível no Launchpad Fiori
Vamos navegar para a administração do ambiente NEO, e perceba que agora temos duas aplicações no nosso painel. Vamos clicar para obter maiores informações
Aqui vemos a aplicação que criamos na primeira parte ainda com status de parado, e além disso a nova aplicação com status de Iniciada. Clique no nome da aplicação para que possamos obter maiores detalhes
Semelhante ao que já havíamos visto no ambiente Cloud Foundry, aqui também temos acesso a URL da aplicação, e no painel a esquerda informações de log e versionamento

Vamos clicar na URL e então complementa-la para que seja possível acessar a nossa aplicação. No meu caso irei complementa-la com /webapp/index.html, isso porque é a forma que está estruturada as minhas pastas no Web IDE. Veja as imagens abaixo:

Temos a raiz sendo Workspace, e então o nome do projeto: cf-bar8-exemplo002. Dentro do projeto é o que queremos acessar, então utilizarei: webapp/index.html
URL complementada com webapp/index.html

Conclusão

E já que conversamos aqui hoje sobre tantos aspectos técnicos, deixe-me apenas concluir com uma mensagem que é a essência do que está por vir nos próximos anos.

Quando se trata de nos mantermos atualizados, estar motivado é o recurso mais precioso que temos. Se vamos dominar consistentemente nosso ofício, precisamos proteger nossa motivação dos desafios que ameaçam extingui-la.

Especificamente, precisamos estar atentos para sentimentos de ansiedade ou sermos oprimidos. Essas cargas podem ser abordadas desde o início com hábitos saudáveis de aprendizado, bem como foco organizado e deliberado.

Se você puder proteger e cultivar sua motivação para aprender o que está por vir, nada poderá ficar no seu caminho. Você desenvolverá uma resolução inabalável que o levará a se tornar o melhor desenvolvedor possível.

Fique apaixonado. Permaneça motivado.

--

--

Editor for

Agilista, Desenvolvedor e quando não está discutindo TDD está sendo repreendido por algum comentário infeliz