New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
BUG - Deployment test mode stopped working on version @sap/ux-ui5-tooling:1.13.2 #1873
Comments
Hi, I'm struggling to reproduce the issue both locally on mac and on Business Application Studio using either 1.13.2 and the latest 1.13.3. Can you share your ui5-deploy.yaml please? Please obfuscate any sensitive data please. Do you know the reason why the HTTP request is failing as I might be able to reduce the HTTP error code to understand the flow more. You can also add more verbose logging, by adding the verbose flag; customTasks:
- name: deploy-to-abap
afterTask: generateCachebusterInfo
configuration:
verbose: true
target: ... Could you also share some further details? node -v Your OS? Mac | Linux | Windows Thanks. |
Hi John, I am using vscode on macos. I was not able to determine, even raising the log level to 5 as it stops here:
here it goes my ui5-build.yaml
If you need more information on reproducing, please message me on SAP MSteams. |
Ok! So I'm able to recreate the issue with the following sample ui5-deploy.yaml; # yaml-language-server: $schema=https://sap.github.io/ui5-tooling/schema/ui5.yaml.json
specVersion: "3.1"
metadata:
name: jlapril2024med
copyright: |-
SOL UI - https://github.wdf.sap.corp/SAPLanguagePlatform/SolUIs
* (c) Copyright 2017-${currentYear} SAP
type: application
resources:
configuration:
propertiesFileSourceEncoding: UTF-8
paths:
webapp: webapp
framework:
name: SAPUI5
version: 1.96.17
builder:
resources:
excludes:
- /test/**
- /localService/**
customTasks:
- name: deploy-to-abap
afterTask: generateCachebusterInfo
configuration:
verbose: true
ignoreCertError: true
target:
client: 000
url: https://myabaphost:44300
auth: basic
credentials:
username: env:FIORI_TOOLS_USER
password: env:FIORI_TOOLS_PASSWORD
app:
name: ZPROD04280950
description: Set the parameters for an evaluation 2
package: $tmp
transport: ""
exclude:
- /test/ I've added the verbose flag which produces the following output; error abap-deploy-task ZPROD04280950 Deployment has failed.
debug abap-deploy-task ZPROD04280950 {
debug abap-deploy-task ZPROD04280950 verbose: true,
debug abap-deploy-task ZPROD04280950 ignoreCertError: true,
debug abap-deploy-task ZPROD04280950 target: {
debug abap-deploy-task ZPROD04280950 client: 0,
debug abap-deploy-task ZPROD04280950 url: 'https://myabaphost:44300',
debug abap-deploy-task ZPROD04280950 auth: 'basic'
debug abap-deploy-task ZPROD04280950 },
debug abap-deploy-task ZPROD04280950 credentials: 'hidden',
debug abap-deploy-task ZPROD04280950 app: {
debug abap-deploy-task ZPROD04280950 name: 'ZPROD04280950',
debug abap-deploy-task ZPROD04280950 description: 'Set the parameters for an evaluation 2',
debug abap-deploy-task ZPROD04280950 package: '$tmp',
debug abap-deploy-task ZPROD04280950 transport: ''
debug abap-deploy-task ZPROD04280950 },
debug abap-deploy-task ZPROD04280950 exclude: [ '/test/' ],
debug abap-deploy-task ZPROD04280950 yes: true,
debug abap-deploy-task ZPROD04280950 strictSsl: false,
debug abap-deploy-task ZPROD04280950 configPath: 'ui5-deploy.yaml',
debug abap-deploy-task ZPROD04280950 testMode: true,
debug abap-deploy-task ZPROD04280950 log: 5,
debug abap-deploy-task ZPROD04280950 test: true,
debug abap-deploy-task ZPROD04280950 safe: true,
debug abap-deploy-task ZPROD04280950 keep: true,
debug abap-deploy-task ZPROD04280950 cli: false
debug abap-deploy-task ZPROD04280950 } As you can see, the client is being interrupted as
I will investigate the code to see if it can be handled better. |
@longieirl thank you for the first analysis. The error does make sense as if there is possibily a boolean verification against the client field:
it will return as boolean false and therefore could be the reason of this error. Well definitelly something on this version changed as we've always used without quotes. I'll stick with the older version for now and wait what is the resolution. Thank you, |
Hi, import { parseDocument } from 'yaml';
import { readFileSync } from 'fs';
import { join } from 'path';
const yaml = parseDocument(readFileSync(join(process.cwd(), 'ui5-deploy.yaml'), 'utf8')).toJSON();
console.log(`>>> ${JSON.stringify(yaml)}`); The
There are two fixes required; In |
Also, when you create the deployment config using the SAP Fiori tools wizard, it will create the following configuration with the client correctly quoted;
However, the fixes still need to be applied to prevent this exception if the yaml configuration is manually changed. |
@eurushibata what is strange, I'm able to reproduce this issue on all versions i.e. 1.13.1 and 1.11.5. To ensure this value is correctly handled i.e. the appropiate client ID is passed to any HTTP calls, I would ensure that its double quoted. For example, if you search for any YAML formatters online it will change 000 to 0 which is not the correct client ID when passed to the ABAP backend. |
@longieirl thank you for the analysis. I'll change it to have in quotes from my end but weird that it worked all time for us. Maybe the rootcause isn't exactly the 000, but some other stuff. |
Related Feature
Feature request: issue number
Description
Since upgrading to @sap/ux-ui5-tooling version 1.13.2, the deploy command with test mode stopped.
Steps to Reproduce
Steps to reproduce the behavior:
try to deploy with test mode to ABAP system.
Expected results
Expect the deployment test to finish. On version 1.13.1:
Actual results
On version 1.13.2:
Screenshots
If applicable, add screenshots to help explain the problem.
Version/Components/Environment
Add any other context about the problem here
OS:
Root Cause Analysis
Problem
{describe the problem}
Fix
{describe the fix}
Why was it missed
{Some explanation why this issue might have been missed during normal development/testing cycle}
How can we avoid this
{if we don’t want to see this type of issues anymore what we should do to prevent}
The text was updated successfully, but these errors were encountered: