RzGold local dev setup

main
Yik Teng Hie 4 years ago
parent 43625fb099
commit 6a8db5d3b3

@ -0,0 +1,68 @@
# Local environment Setup
* Postman JSON for API [Link](https://razermis.sharepoint.com/:f:/s/RazerGoldKM-Engineering/Elm1CcUhDy5Bi8DnqkrfjFcBhTlxw1659hAJVTdhBxqSxw?e=8PxaYZ)
* [Engineering Doc](https://razermis.sharepoint.com/:f:/s/RazerGoldKM-Engineering/EjcLZaXu9ZhLtqeJgUQxeF8Bn2jGEe8l5UOOKiTPT8iXWQ?e=ZnCFbc)
* Visual Studio Code
* NodeJS
* FortiClient VPN access to connec to dev server
* Create Razer Dev Account
* https://dweb.zgold-dev.razer.com/
* SSL cert files under `C:\etc\ssl\nodejs`
* [`zgdwild.chain`](./ssl/zgdwild.chain)
* [`zgdwild.key`](./ssl/zgdwild.key)
* [`zgdwild.pem`](./ssl/zgdwild.pem)
* host file `C:\Windows\System32\drivers\etc\hosts`
* ```text
127.0.0.1 www.zgold-dev.razer.com
```
* Start BE server. BE server also serve FE at port 443 `./dist`
* `npm start`
* Start FE server to proxy from `https://www.zgold-dev.razer.com:7888/api` to `https://localhost/api`
* `npm run serve` to serve FE webpack
* Hot Reload editing here
* proxy setup in `webpack.dev.js`
```json
devServer: {
allowedHosts: [
'media.zvault.razerzone.com',
'media.gold.razer.com'
],
contentBase: dist,
publicPath: '/',
open: true,
progress: true,
host: Environment.webpackHost,
port: Environment.webpackPort,
proxy: {
'/api': 'https://www.zgold-dev.razer.com'
},
https: {
ca: fs.readFileSync(Environment.ssl.ca, 'utf8'),
key: fs.readFileSync(Environment.ssl.key, 'utf8'),
cert: fs.readFileSync(Environment.ssl.cert, 'utf8'),
spdy: {
protocols: ['http/1.1']
}
},
```

@ -0,0 +1,67 @@
-----BEGIN CERTIFICATE-----
MIIGEzCCA/ugAwIBAgIQfVtRJrR2uhHbdBYLvFMNpzANBgkqhkiG9w0BAQwFADCB
iDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0pl
cnNleSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNV
BAMTJVVTRVJUcnVzdCBSU0EgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTgx
MTAyMDAwMDAwWhcNMzAxMjMxMjM1OTU5WjCBjzELMAkGA1UEBhMCR0IxGzAZBgNV
BAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEYMBYGA1UE
ChMPU2VjdGlnbyBMaW1pdGVkMTcwNQYDVQQDEy5TZWN0aWdvIFJTQSBEb21haW4g
VmFsaWRhdGlvbiBTZWN1cmUgU2VydmVyIENBMIIBIjANBgkqhkiG9w0BAQEFAAOC
AQ8AMIIBCgKCAQEA1nMz1tc8INAA0hdFuNY+B6I/x0HuMjDJsGz99J/LEpgPLT+N
TQEMgg8Xf2Iu6bhIefsWg06t1zIlk7cHv7lQP6lMw0Aq6Tn/2YHKHxYyQdqAJrkj
eocgHuP/IJo8lURvh3UGkEC0MpMWCRAIIz7S3YcPb11RFGoKacVPAXJpz9OTTG0E
oKMbgn6xmrntxZ7FN3ifmgg0+1YuWMQJDgZkW7w33PGfKGioVrCSo1yfu4iYCBsk
Haswha6vsC6eep3BwEIc4gLw6uBK0u+QDrTBQBbwb4VCSmT3pDCg/r8uoydajotY
uK3DGReEY+1vVv2Dy2A0xHS+5p3b4eTlygxfFQIDAQABo4IBbjCCAWowHwYDVR0j
BBgwFoAUU3m/WqorSs9UgOHYm8Cd8rIDZsswHQYDVR0OBBYEFI2MXsRUrYrhd+mb
+ZsF4bgBjWHhMA4GA1UdDwEB/wQEAwIBhjASBgNVHRMBAf8ECDAGAQH/AgEAMB0G
A1UdJQQWMBQGCCsGAQUFBwMBBggrBgEFBQcDAjAbBgNVHSAEFDASMAYGBFUdIAAw
CAYGZ4EMAQIBMFAGA1UdHwRJMEcwRaBDoEGGP2h0dHA6Ly9jcmwudXNlcnRydXN0
LmNvbS9VU0VSVHJ1c3RSU0FDZXJ0aWZpY2F0aW9uQXV0aG9yaXR5LmNybDB2Bggr
BgEFBQcBAQRqMGgwPwYIKwYBBQUHMAKGM2h0dHA6Ly9jcnQudXNlcnRydXN0LmNv
bS9VU0VSVHJ1c3RSU0FBZGRUcnVzdENBLmNydDAlBggrBgEFBQcwAYYZaHR0cDov
L29jc3AudXNlcnRydXN0LmNvbTANBgkqhkiG9w0BAQwFAAOCAgEAMr9hvQ5Iw0/H
ukdN+Jx4GQHcEx2Ab/zDcLRSmjEzmldS+zGea6TvVKqJjUAXaPgREHzSyrHxVYbH
7rM2kYb2OVG/Rr8PoLq0935JxCo2F57kaDl6r5ROVm+yezu/Coa9zcV3HAO4OLGi
H19+24rcRki2aArPsrW04jTkZ6k4Zgle0rj8nSg6F0AnwnJOKf0hPHzPE/uWLMUx
RP0T7dWbqWlod3zu4f+k+TY4CFM5ooQ0nBnzvg6s1SQ36yOoeNDT5++SR2RiOSLv
xvcRviKFxmZEJCaOEDKNyJOuB56DPi/Z+fVGjmO+wea03KbNIaiGCpXZLoUmGv38
sbZXQm2V0TP2ORQGgkE49Y9Y3IBbpNV9lXj9p5v//cWoaasm56ekBYdbqbe4oyAL
l6lFhd2zi+WJN44pDfwGF/Y4QA5C5BIG+3vzxhFoYt/jmPQT2BVPi7Fp2RBgvGQq
6jG35LWjOhSbJuMLe/0CjraZwTiXWTb2qHSihrZe68Zk6s+go/lunrotEbaGmAhY
LcmsJWTyXnW0OMGuf1pGg+pRyrbxmRE1a6Vqe8YAsOf4vmSyrcjC8azjUeqkk+B5
yOGBQMkKW+ESPMFgKuOXwIlCypTPRpgSabuY0MLTDXJLR27lk8QyKGOHQ+SwMj4K
00u/I5sUKUErmgQfky3xxzlIPK1aEn8=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIFgTCCBGmgAwIBAgIQOXJEOvkit1HX02wQ3TE1lTANBgkqhkiG9w0BAQwFADB7
MQswCQYDVQQGEwJHQjEbMBkGA1UECAwSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYD
VQQHDAdTYWxmb3JkMRowGAYDVQQKDBFDb21vZG8gQ0EgTGltaXRlZDEhMB8GA1UE
AwwYQUFBIENlcnRpZmljYXRlIFNlcnZpY2VzMB4XDTE5MDMxMjAwMDAwMFoXDTI4
MTIzMTIzNTk1OVowgYgxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpOZXcgSmVyc2V5
MRQwEgYDVQQHEwtKZXJzZXkgQ2l0eTEeMBwGA1UEChMVVGhlIFVTRVJUUlVTVCBO
ZXR3b3JrMS4wLAYDVQQDEyVVU0VSVHJ1c3QgUlNBIENlcnRpZmljYXRpb24gQXV0
aG9yaXR5MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAgBJlFzYOw9sI
s9CsVw127c0n00ytUINh4qogTQktZAnczomfzD2p7PbPwdzx07HWezcoEStH2jnG
vDoZtF+mvX2do2NCtnbyqTsrkfjib9DsFiCQCT7i6HTJGLSR1GJk23+jBvGIGGqQ
Ijy8/hPwhxR79uQfjtTkUcYRZ0YIUcuGFFQ/vDP+fmyc/xadGL1RjjWmp2bIcmfb
IWax1Jt4A8BQOujM8Ny8nkz+rwWWNR9XWrf/zvk9tyy29lTdyOcSOk2uTIq3XJq0
tyA9yn8iNK5+O2hmAUTnAU5GU5szYPeUvlM3kHND8zLDU+/bqv50TmnHa4xgk97E
xwzf4TKuzJM7UXiVZ4vuPVb+DNBpDxsP8yUmazNt925H+nND5X4OpWaxKXwyhGNV
icQNwZNUMBkTrNN9N6frXTpsNVzbQdcS2qlJC9/YgIoJk2KOtWbPJYjNhLixP6Q5
D9kCnusSTJV882sFqV4Wg8y4Z+LoE53MW4LTTLPtW//e5XOsIzstAL81VXQJSdhJ
WBp/kjbmUZIO8yZ9HE0XvMnsQybQv0FfQKlERPSZ51eHnlAfV1SoPv10Yy+xUGUJ
5lhCLkMaTLTwJUdZ+gQek9QmRkpQgbLevni3/GcV4clXhB4PY9bpYrrWX1Uu6lzG
KAgEJTm4Diup8kyXHAc/DVL17e8vgg8CAwEAAaOB8jCB7zAfBgNVHSMEGDAWgBSg
EQojPpbxB+zirynvgqV/0DCktDAdBgNVHQ4EFgQUU3m/WqorSs9UgOHYm8Cd8rID
ZsswDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wEQYDVR0gBAowCDAG
BgRVHSAAMEMGA1UdHwQ8MDowOKA2oDSGMmh0dHA6Ly9jcmwuY29tb2RvY2EuY29t
L0FBQUNlcnRpZmljYXRlU2VydmljZXMuY3JsMDQGCCsGAQUFBwEBBCgwJjAkBggr
BgEFBQcwAYYYaHR0cDovL29jc3AuY29tb2RvY2EuY29tMA0GCSqGSIb3DQEBDAUA
A4IBAQAYh1HcdCE9nIrgJ7cz0C7M7PDmy14R3iJvm3WOnnL+5Nb+qh+cli3vA0p+
rvSNb3I8QzvAP+u431yqqcau8vzY7qN7Q/aGNnwU4M309z/+3ri0ivCRlv79Q2R+
/czSAaF9ffgZGclCKxO/WIu6pKJmBHaIkU4MiRTOok3JMrO66BQavHHxW/BBC5gA
CiIDEOUMsfnNkjcZ7Tvx5Dq2+UUTJnWvu6rvP3t3O9LEApE9GQDTF1w52z97GA1F
zZOFli9d31kWTz9RvdVFGD/tSo7oBmF0Ixa1DVBzJ0RHfxBdiSprhTEUxOipakyA
vGp4z7h/jnZymQyd/teRCBaho1+V
-----END CERTIFICATE-----

@ -0,0 +1,28 @@
-----BEGIN PRIVATE KEY-----
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDDlpFNc6Umze6j
dajvLYy53UQ3/0fKBJwyUhLTfwETPkyDaQmJk18Zw6pPSGjEhSEhKE3V7nhXanQl
g/TZ2ZOiQ7HKN+L1oJvV+E1pn4GfWdw8v0bhSNhHIDU12wIq+kv6yGYtn15hXaBR
P754/4Av1HJ/2T1kASKNZMHWs1Qd8YoxeImypmvf7d7FEzJfRMDg25HOctjkCZBl
l3SHrVm3GJUG91czCwEg7ERH9q5/5xEwXIZHuOKQU1c5F60IAOte6VOQw1v+tjN5
AX98pE0RrgrsIWBd7sRHf8IqWXzlH7VJNMXNgMmAjzFuGiymwSMoF+5+qXgciYIC
iblFeRqZAgMBAAECggEAG/IjiMGBU24RLuHc5W/Ir7XhzW54P3ExMC9x6S44ZRt9
qzkS18lqyS+f4fwinBG5jhdIJ80O/M6FEecs0QO5iHHLsW0SzK3KFmSICxNzXeVl
Bnj+E6po3KDJeYx1XtasjISdtN8UiSzrfzBwcrFvC2Z7hbDwiJ1w5msDFz5AQpbE
hpH1pyTwJmmJBvotz6J8HWD/VdFyEgVkU3Q1Ps4GwDmLkdAtkQkA/iYf+3oRFNLr
1bBjbhrllrHltryULgIq0EwRHm01sIoRPGpkpnawO0/nDuZFGzetEhMuBfErsyDG
9zOjVjqC+GfiikhtoOAY9TvEF82P2Tj0tZLypzyJ0QKBgQDkmP0a1WAdCJP5ketj
2HUgMw8RbbjdyKJwX6JX62C+3souxtkVYlMu9jEUeKfRCipwsP+kSWhqPpC2ayM0
9kbanuVzFwM0bGPcDHlBQ3cU0NXJf/4bOBP/4A+IGAB20sA0cKIrxczIj44RTD/g
lDf/Hy7BfcLVjzfoGd3Ivwup8wKBgQDbCJzHvWGqf5o2G8Z1kkkEvg/0N5ZxjZWJ
axiiDPRsFr1mfJkwZQrgFAJtjTOe1HAreJOjl8j80GhKLZPwLfxP484JFmSDDcpB
YC9q7RVqgHxVI5lfkjQ2Mdj8eWHWKocIVl56tBr7uNPFout341tFWghOQlv7fai0
TbmaSy3gQwKBgQDa5NBAeJ+vTX58lUikdCo7qgi8tKc34B4Dot/OdnpOawGJZymJ
+3wR1PbMVnjDh4t6G1K/2vcb/UsPEmpFFaplP5AQ87FC6qN4m40kfFiz2wFMEL6f
C8TC2Kemtu0C2u3niQ8RATgFuMjeMXhdMTCpoA9igm0lmB19p/8iciXWFwKBgBmF
Q18yfbKz82/ihJkmVkOrMYivAWRxrr64L8KR59jAPYk3c1HkNAQv0KibDyyua/Nk
tS8WfGCYl84syVPux7s3O8ZrSYLLlIlRf7ThsuEZ32K8Jx6vlk3KORIRwoiFo/4g
shlx6sLxohshBHaPkw7dkqIrsTP4TDPV6o5DvDCpAoGAMNcHO4jNGnR6RNeCD7S+
NqRL614I8Z++aG82qq+pVo6Ih061QVpdTNF0PyMzkx3CCZSTmx7KYWaoOXpZOOtP
0/wVRjnuc2QsR/HClLlXRvt2HnwVkFL6PUDatUK85fwJblybCNKAUCbmjpD8kZkn
ZYJFnLZ+qjRFYSSihIvNN8o=
-----END PRIVATE KEY-----

@ -0,0 +1,36 @@
-----BEGIN CERTIFICATE-----
MIIGSDCCBTCgAwIBAgIQNvVPCW/EyqvpoYtao/FszjANBgkqhkiG9w0BAQsFADCB
jzELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G
A1UEBxMHU2FsZm9yZDEYMBYGA1UEChMPU2VjdGlnbyBMaW1pdGVkMTcwNQYDVQQD
Ey5TZWN0aWdvIFJTQSBEb21haW4gVmFsaWRhdGlvbiBTZWN1cmUgU2VydmVyIENB
MB4XDTIwMDcxMzAwMDAwMFoXDTIyMDcxMzIzNTk1OVowIDEeMBwGA1UEAwwVKi56
Z29sZC1kZXYucmF6ZXIuY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKC
AQEAw5aRTXOlJs3uo3Wo7y2Mud1EN/9HygScMlIS038BEz5Mg2kJiZNfGcOqT0ho
xIUhIShN1e54V2p0JYP02dmTokOxyjfi9aCb1fhNaZ+Bn1ncPL9G4UjYRyA1NdsC
KvpL+shmLZ9eYV2gUT++eP+AL9Ryf9k9ZAEijWTB1rNUHfGKMXiJsqZr3+3exRMy
X0TA4NuRznLY5AmQZZd0h61ZtxiVBvdXMwsBIOxER/auf+cRMFyGR7jikFNXORet
CADrXulTkMNb/rYzeQF/fKRNEa4K7CFgXe7ER3/CKll85R+1STTFzYDJgI8xbhos
psEjKBfufql4HImCAom5RXkamQIDAQABo4IDDDCCAwgwHwYDVR0jBBgwFoAUjYxe
xFStiuF36Zv5mwXhuAGNYeEwHQYDVR0OBBYEFG4pLwGOLKZXyCtdBbLm2T7rqp7F
MA4GA1UdDwEB/wQEAwIFoDAMBgNVHRMBAf8EAjAAMB0GA1UdJQQWMBQGCCsGAQUF
BwMBBggrBgEFBQcDAjBJBgNVHSAEQjBAMDQGCysGAQQBsjEBAgIHMCUwIwYIKwYB
BQUHAgEWF2h0dHBzOi8vc2VjdGlnby5jb20vQ1BTMAgGBmeBDAECATCBhAYIKwYB
BQUHAQEEeDB2ME8GCCsGAQUFBzAChkNodHRwOi8vY3J0LnNlY3RpZ28uY29tL1Nl
Y3RpZ29SU0FEb21haW5WYWxpZGF0aW9uU2VjdXJlU2VydmVyQ0EuY3J0MCMGCCsG
AQUFBzABhhdodHRwOi8vb2NzcC5zZWN0aWdvLmNvbTA1BgNVHREELjAsghUqLnpn
b2xkLWRldi5yYXplci5jb22CE3pnb2xkLWRldi5yYXplci5jb20wggF+BgorBgEE
AdZ5AgQCBIIBbgSCAWoBaAB2AEalVet1+pEgMLWiiWn0830RLEF0vv1JuIWr8vxw
/m1HAAABc0ZPWScAAAQDAEcwRQIhAMcBp8/gr79Locg4/eAPeO2LWE2XRVhioIdq
2tuQTIdNAiBQldo5aXkhOOGL0RWxd4ikeouGVHqtzXIhsyiE6CAu8wB2AN+lXqto
gk8fbK3uuF9OPlrqzaISpGpejjsSwCBEXCpzAAABc0ZPWU8AAAQDAEcwRQIhAOCT
emtI8piqxk3aARs/KpqJuTWjOxAWAsEP0GRShdwMAiBkd74V6VifcGvxHFPbQkOM
xWr2HQD61UTAij9/W4gl1gB2AG9Tdqwx8DEZ2JkApFEV/3cVHBHZAsEAKQaNsgia
N9kTAAABc0ZPWSAAAAQDAEcwRQIhAJ37VwNKtR3/Vlr0WQT+LrgPP0AynZi+eSfn
tsVkl7fAAiAIvLWBupgNVNruXB+2wT4zFYJ9DTSjkQ+JmuzoiT374TANBgkqhkiG
9w0BAQsFAAOCAQEAROp7cdPIK/rK1fXlhsfvw6MNuvbni8zcsesaJ1lKfd7nbn8X
bh+L3aPLSuCy1RGRyZTdyfPgqzroWhR39vLsmpQ+cDoPsohmY0m6ngPAd6VMduIu
YfKoO3/zcXfjK5tdjpJHOU7MsPNnmnibGi6pxRUQYzN9iXFdL1ie7oU++JDKadE5
KxcNEKGM40ZiCGxO0B/lrtFt/g4W4lTndIqYMbw0qBnj3zVGV1CzW9B1VMKCS1ry
MYVgIu1YItRFgoHT9rqYjwzEgDd938bAIFq7sPK06JBqH25/ENAtkawYEZnExnnE
Z7E0bNjTiDqoIHLoMTIgupliM/EIM1ETDCReuQ==
-----END CERTIFICATE-----

@ -14,6 +14,36 @@
* snapd
```sh
$ sudo apt install snapd
# this will change Java jdk to 11java
$ sudo apt install android-sdk
/home/AccountName/Android/Sdk
/usr/lib/android-sdk
/Library/Android/sdk/
/Users/[USER]/Library/Android/sdk
wget https://dl.google.com/android/repository/commandlinetools-linux-6609375_latest.zip
unzip commandlinetools-linux-6609375_latest.zip -d cmdline-tools
sudo mv cmdline-tools $ANDROID_HOME/
export PATH=$ANDROID_HOME/cmdline-tools/tools/bin:$PATH
sudo /usr/lib/android-sdk/cmdline-tools/tools/bin/sdkmanager --licenses
$ sudo ./gradlew assembleRelease
```
* Android SDK
```sh
@ -81,7 +111,39 @@
### Jenkins build
* Once you have the source code in Jenkins, its time to build. If your project has a Gradle wrapper, thats what you should use
* Task : `assembleDebug`
* Task :
* `assembleDebug`: APK Debug build
* `assembleRelease` : APK release build
* `bundleRelease`: [Bundle APK release](https://developer.android.com/guide/app-bundle) Size Limit : 150MB
* [info](https://medium.com/androiddevelopers/building-your-first-app-bundle-bbcd228bf631)
* [Signing bundle](https://medium.com/androiddevelopers/building-your-first-app-bundle-bbcd228bf631)
* ```sh
$ jarsigner -keystore $pathToKeystore app-release.aab $keyAlias
```
* ```
In android studio, to generate signed bundle
Build => Generate Signed Bundle / APK
```
* Flutter
* `flutter build apk` will output to `./build\app\outputs\apk\release`
* `flutter build appbundle` will generated a publishing format aab
```sh
# build\app\outputs\bundle\release\app-release.apk
$ flutter build apk
# build\app\outputs\bundle\release\app-release.aab
$ flutter build appbundle
```
### Next

@ -0,0 +1,20 @@
# Misc
```sh
$ cat cataline.out | grep -in 13-Aug-2021
```
```sh
1970 ip a
1971 adduser tenghieyik
1972 nano /etc/sudoers
1973 passwd tenghieyik
1975 passwd tenghieyik
1976 clear
```
Loading…
Cancel
Save