update email and REAME.md

This commit is contained in:
Joseph Le 2023-10-03 09:16:43 +00:00
parent 57e9ab5d63
commit 19c6ea4d0d
8 changed files with 71 additions and 8 deletions

View File

@ -8,7 +8,7 @@
### 2) Access the folder you just cloned
* root@root#
```sh
cd <path>/gitea_CICD
cd gitea_CICD
```
### 3) Check the directory path
* root@root#
@ -17,13 +17,16 @@
```
* output: <path>/gitea_CICD
### 4) Fill in environment variables
### 4) Fill in environment variables (*)
* root@root#
```sh
nano service/giteaService
```
* GIT_USERNAME: Username of the git account.
* GIT_PASSWORD: Password of the git account.
* GIT_BRANCH: The git branch is needed for the server.
* EMAIL_ADDRESS: Your email address.
* SEND_EMAIL: Turn on/off email sending feature.
* PROJECT_PATH: Root path of your project.
* FE_PROJECT_PATH: Path of the front-end folder.
* BE_PROJECT_PATH: Path of the back-end folder.
@ -34,6 +37,8 @@
```sh
./install.sh
```
![install](https://ibb.co/rFbLqvP)
#### ** Note: **
- Project gitea_CICD should be placed at the same folder level as your project
@ -45,3 +50,4 @@
- Depending on the technology your project uses, the "gitea_CICD/service/giteaHook.sh" file will be custom configured to match the technology.
**____ Joseph ____ **

View File

@ -1,3 +1,4 @@
const fs = require("fs");
const express = require("express");
const app = express();
const { exec } = require("child_process");
@ -5,12 +6,14 @@
app.use(express.json());
app.post("/git/gitea-webhook", (req, res) => {
app.post("/git/gitea-webhook", async(req, res) => {
const contentFile = await fs.readFileSync("./service/giteaService", "utf8");
const checkSendMail = contentFile.split("\n").filter((i)=>i.includes("SEND_EMAIL"))[0]?.split("=")[1].trim()
const emailAddress = contentFile.split("\n").filter((i)=>i.includes("EMAIL_ADDRESS"))[0]?.split("=")[1].trim()
const giteaEvent = req.headers["x-gitea-event"];
console.log("New event: "+giteaEvent)
const body = req.body
// console.log(body)
//console.log(body)
res.status(200).send({mess: "The event has been received!", data:req.body})
exec(
@ -21,6 +24,8 @@
// res.status(500).send("PULL ERROR")
}
console.log(stdout)
if(checkSendMail==="True"){
const transporter = nodeMailer.createTransport({
pool: true,
@ -35,14 +40,15 @@
const options = {
from: "admin@apactech.io",
to: "joseph@apactech.io",
to: emailAddress,
subject: "New Git envent: "+giteaEvent ,
html: "<h1>*** "+giteaEvent+" event ***</h1><h4>Committer: "+req.body.commits[0]?.committer.name+"</h4><h4>Message: "+req.body.commits[0]?.message+"</h4><a href='"+req.body.commits[0]?.url+"'>Link: "+req.body.commits[0]?.url+"</a><h4>Process output:</h4><textarea style='wordWrap:break-word; display: block; width:100%; height:70vh;border:solid 2px orange'>" +
html: "<h1>*** "+giteaEvent+" event ***</h1><h4>Committer: "+req.body.commits[0]?.committer.name+"</h4><h4>Message: "+req.body.commits[0]?.message+"</h4><h4>Branch: "+req.body.ref+"</h4><a href='"+req.body.commits[0]?.url+"'>Link: "+req.body.commits[0]?.url+"</a><h4>Process output:</h4><textarea style='wordWrap:break-word; display: block; width:100%; height:70vh;border:solid 2px orange'>" +
stdout +
"</textarea>"
};
return transporter.sendMail(options);
}
});
});

5
node_modules/.package-lock.json generated vendored
View File

@ -318,6 +318,11 @@
"node": ">= 0.6"
}
},
"node_modules/fs": {
"version": "0.0.1-security",
"resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz",
"integrity": "sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w=="
},
"node_modules/function-bind": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",

9
node_modules/fs/README.md generated vendored Normal file
View File

@ -0,0 +1,9 @@
# Security holding package
This package name is not currently in use, but was formerly occupied
by another package. To avoid malicious use, npm is hanging on to the
package name, but loosely, and we'll probably give it to you if you
want it.
You may adopt this package by contacting support@npmjs.com and
requesting the name.

20
node_modules/fs/package.json generated vendored Normal file
View File

@ -0,0 +1,20 @@
{
"name": "fs",
"version": "0.0.1-security",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"repository": {
"type": "git",
"url": "git+https://github.com/npm/security-holder.git"
},
"keywords": [],
"author": "",
"license": "ISC",
"bugs": {
"url": "https://github.com/npm/security-holder/issues"
},
"homepage": "https://github.com/npm/security-holder#readme"
}

11
package-lock.json generated
View File

@ -11,6 +11,7 @@
"dependencies": {
"child_process": "^1.0.2",
"express": "^4.18.2",
"fs": "^0.0.1-security",
"nodemailer": "^6.9.5",
"nodemon": "^3.0.1"
}
@ -329,6 +330,11 @@
"node": ">= 0.6"
}
},
"node_modules/fs": {
"version": "0.0.1-security",
"resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz",
"integrity": "sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w=="
},
"node_modules/fsevents": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
@ -1208,6 +1214,11 @@
"resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
"integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q=="
},
"fs": {
"version": "0.0.1-security",
"resolved": "https://registry.npmjs.org/fs/-/fs-0.0.1-security.tgz",
"integrity": "sha512-3XY9e1pP0CVEUCdj5BmfIZxRBTSDycnbqhIOGec9QYtmVH2fbLpj86CFWkrNOkt/Fvty4KZG5lTglL9j/gJ87w=="
},
"fsevents": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",

View File

@ -16,6 +16,7 @@
"dependencies": {
"child_process": "^1.0.2",
"express": "^4.18.2",
"fs": "^0.0.1-security",
"nodemailer": "^6.9.5",
"nodemon": "^3.0.1"
}

View File

@ -9,6 +9,11 @@ GIT_USERNAME=joseph.le@apactech.io
GIT_PASSWORD=Maypjtkh0ng
GIT_BRANCH=dev
#Email
EMAIL_ADDRESS=joseph@apactech.io
#Send mail: True or False
SEND_EMAIL=False
#Duong dan goc cua project (*)
PROJECT_PATH=/home/joseph/Demo_Git_Webhook