Skip to content

Commit ad00826

Browse files
Updates
1 parent 7f168b5 commit ad00826

File tree

4 files changed

+104
-31
lines changed

4 files changed

+104
-31
lines changed

data/codes.json

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,13 @@
5555
},
5656
{
5757
"code": "0112",
58-
"message": "The just.config.js' \"module.exports\" json cannot be parsed.",
58+
"message": "The just.config.js' \"module.exports\" cannot be parsed as json.",
59+
"crashed": true,
60+
"link": ""
61+
},
62+
{
63+
"code": "0113",
64+
"message": "Your repository has a just.config.json file in the root directory. Please remove it.",
5965
"crashed": true,
6066
"link": ""
6167
}

src/postprocessor.sh

Lines changed: 0 additions & 28 deletions
This file was deleted.

src/redirect/index.js

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
/*
2+
MIT License
3+
4+
Copyright (c) 2025 JustDeveloper <https://justdeveloper.is-a.dev/>
5+
6+
Permission is hereby granted, free of charge, to any person obtaining a copy
7+
of this software and associated documentation files (the "Software"), to deal
8+
in the Software without restriction, including without limitation the rights
9+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10+
copies of the Software, and to permit persons to whom the Software is
11+
furnished to do so, subject to the following conditions:
12+
13+
The above copyright notice and this permission notice shall be included in all
14+
copies or substantial portions of the Software.
15+
16+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22+
SOFTWARE.
23+
*/
24+
25+
const fs = require('fs');
26+
27+
const config = JSON.parse(fs.readFileSync('just.config.json', 'utf-8'));
28+
const redirectConfig = config.redirect_config;
29+
30+
const generatePage = (url, title, path_) => {
31+
const page = path_ || "index"
32+
33+
const htmlContent = `
34+
<!DOCTYPE html>
35+
<html lang="en">
36+
<head>
37+
<meta charset="UTF-8">
38+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
39+
<title>${title}</title>
40+
<link rel="stylesheet" href="${page}.css">
41+
</head>
42+
<body>
43+
<h1>${title}</h1>
44+
<script src="${page}.js"></script>
45+
</body>
46+
</html>
47+
`;
48+
49+
fs.writeFileSync(`deploy/${page}.html`, htmlContent);
50+
51+
const cssContent = `
52+
body {
53+
font-family: Arial, sans-serif;
54+
text-align: center;
55+
}
56+
`;
57+
58+
fs.writeFileSync(`deploy/${page}.css`, cssContent);
59+
60+
const jsContent = `
61+
console.log('Redirecting to ${url}');
62+
window.location.href = '${url}';
63+
`;
64+
65+
fs.writeFileSync(`deploy/${page}.js`, jsContent);
66+
};
67+
68+
generatePage(redirectConfig.url, redirectConfig.title);
69+
70+
redirectConfig.paths.forEach(({ path_, url, title }) => {
71+
generatePage(url, title, path_);
72+
});

src/run.sh

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,19 @@
2323
#!/bin/bash
2424
ERRORS_FILE="$GITHUB_ACTION_PATH/data/codes.json"
2525
CONFIG_FILE="just.config.js"
26+
CONFIG_DATA="just.config.json"
27+
28+
ErrorMessage() {
29+
local ERROR_CODE=$1
30+
local ERROR_MESSAGE=$(jq -r ".[\"run.sh\"][] | select(.code==\"$ERROR_CODE\") | .message" "$ERRORS_FILE")
31+
local ERROR_LINK=$(jq -r '.["run.sh"][] | select(.code=="0108") | .link' "$ERRORS_FILE")
32+
echo -e "\n\n\n\nError $ERROR_CODE: $ERROR_MESSAGE $ERROR_LINK"
33+
}
34+
35+
if [ -f "$CONFIG_DATA" ]; then
36+
local ERROR_MESSAGE=($(ErrorMessage "0113"))
37+
echo $ERROR_MESSAGE && exit 1
38+
fi
2639

2740
if [ ! -f "$CONFIG_FILE" ]; then
2841
ERROR_CODE="0108"
@@ -68,5 +81,15 @@ if [[ "$TYPE" != "postprocessor" && "$TYPE" != "redirect" ]]; then
6881
fi
6982

7083
if [ "$TYPE" == "postprocessor" ]; then
71-
bash "$GITHUB_ACTION_PATH/src/postprocessor.sh"
72-
fi
84+
bash $GITHUB_ACTION_PATH/src/postprocessor/checks.sh && \
85+
bash $GITHUB_ACTION_PATH/src/postprocessor/prepare_deployment.sh && \
86+
bash $GITHUB_ACTION_PATH/src/postprocessor/create_api_endpoints.sh && \
87+
bash $GITHUB_ACTION_PATH/src/postprocessor/modify_deployment.sh && \
88+
bash $GITHUB_ACTION_PATH/src/postprocessor/override_deployment.sh && \
89+
bash $GITHUB_ACTION_PATH/src/postprocessor/build_map.sh
90+
elif [ "$TYPE" == "redirect" ]; then
91+
sudo apt update
92+
sudo apt install -y nodejs npm
93+
node src/redirect/index.js
94+
fi
95+

0 commit comments

Comments
 (0)