@genexus/d2c

0.2.21 • Public • Published

deploy-to-cloud-frontend

Deploy to Cloud for GeneXus Frontend generators (ex: Angular)

This library provides CLIs in order to:

  • Request Deployment Authorization to GX D2C Cloud
  • Requst Cloud Provider Credentials to be able to make the Upload
  • Confirm a successful deployment to D2C

Usage

Generate Credentials for Static Deployment

d2c-prepare

Confirm Deployment with D2C

d2c-confirm

Configuration

#Required
SET D2C_AUTH=%AuthToken%
SET D2C_DEPLOY_ID=<guid>

#Optional (Default Value)
SET D2C_SERVER_TYPE=awss3  (default)
SET D2C_SERVER_ID=apps-angular.genexus.com (default)

D2C Required Services

1. Service: AuthorizeDeployment

This service is called before deploying to AWS S3, in order to get new Temporal AWS Credentials.

Request

POST Content-Type: Application/json

Body:

{
    "authToken": "myAuthToken",
    "path": "1234567",
    "serverId": "apps-angular.genexus.com",
    "serverType": "awss3",
    "appName": "MyFirstAngularApp"
}

Response

Content-Type: Application/json
{
    "code": 1,
    "credential": {
        "sessionToken": "dsfdsfs",
        "accessKeyId": "AKIA4EZIEMMO5XXXXXXX",
        "secretAccessKey": "xxxxxxx",
        "expiration": "2090-07-15T23:28:33.359Z",
        "type": "aws"
    },
    "properties": {
        "bucketName": "gx-angular-deployments"
    }
}

JSON Field Code

 ErrorCodes {
    ErrorUnknown = 0,
    Ok = 1,
    ErrorNotAuthorized = 2,
    TokenExpired = 3
}

Service Responsabilities:

  • Validate OAuth Token
  • Validate User is authorized to deploy on VDir ("path")
  • Validate server name: (apps-angular.genexus.com)
  • Call AWS STS Service to Request New Temporal Credential.

2. Service: ConfirmDeployment

This service is called after deploying to AWS S3, in order to notify D2C that a successfully deploy has been completed.

Request

POST Content-Type: Application/json

Body:

{
    "authToken": "myAuthToken",
    "path": "1234567",
    "serverId": "apps-angular.genexus.com",
    "serverType": "awss3",
    "appName": "MyFirstAngularApp",
    "deployStatus": DeployStatus
    ""
}

Response

Content-Type: Application/json
{
    "code":1,
    "description":"success"
}

JSON Field Code

 ErrorCodes {
    ErrorUnknown = 0,
    Ok = 1,
    ErrorNotAuthorized = 2,
    TokenExpired = 3
}

DeployStatus {
    ErrorUnknown = 0,
    Ok = 1,
    UploadFailed = 2
}

Service Responsabilities:

  • Validate OAuth Token
  • Validate User is authorized to deploy on VDir ("path")
  • Validate server name: (apps-angular.genexus.com)
  • Update Database with recent deployment

Versions

Current Tags

VersionDownloads (Last 7 Days)Tag
0.2.219latest

Version History

VersionDownloads (Last 7 Days)Published
0.2.219
0.2.201
0.2.182
0.2.191
0.2.171
0.2.161
0.2.151
0.2.141
0.2.131
0.2.121
0.2.110
0.2.90
0.2.101
0.2.81
0.2.51
0.2.31
0.2.21
0.2.11
0.2.01
0.1.111
0.1.101
0.1.81
0.1.91
0.1.71
0.1.61
0.1.51
0.1.11
0.1.01

Package Sidebar

Install

npm i @genexus/d2c

Weekly Downloads

35

Version

0.2.21

License

ISC

Unpacked Size

72.2 kB

Total Files

56

Last publish

Collaborators

  • ggallotti
  • gerasiz
  • genexusbuilder
  • anaberta
  • dscaffo