添加CC、网页展示器、不停吃和无中生有附属与补充添加超级拴绳
This commit is contained in:
parent
88a24fec37
commit
ccb868e7db
|
|
@ -30,7 +30,6 @@ jobs:
|
|||
ls -la ./packet/packwiz
|
||||
else
|
||||
echo "⚠️ 未找到 packet/packwiz 文件"
|
||||
# 列出 packet 目录内容,帮助调试
|
||||
echo "packet 目录内容:"
|
||||
ls -la packet/
|
||||
fi
|
||||
|
|
@ -43,7 +42,6 @@ jobs:
|
|||
echo "找到 .project/globe.json 文件"
|
||||
cat .project/globe.json
|
||||
|
||||
# 使用 jq 解析 JSON 文件
|
||||
VERSION=$(jq -r '.version // "0.0.0.0"' .project/globe.json)
|
||||
INITIALIZED=$(jq -r '.initialized // "false"' .project/globe.json)
|
||||
NAME=$(jq -r '.name // "MyPack"' .project/globe.json)
|
||||
|
|
@ -62,7 +60,6 @@ jobs:
|
|||
echo "模组加载器版本: $MODLOADER_VERSION"
|
||||
echo "索引文件: $INDEX_FILE"
|
||||
|
||||
# 设置输出变量
|
||||
echo "version=$VERSION" >> $GITHUB_OUTPUT
|
||||
echo "initialized=$INITIALIZED" >> $GITHUB_OUTPUT
|
||||
echo "name=$NAME" >> $GITHUB_OUTPUT
|
||||
|
|
@ -72,7 +69,6 @@ jobs:
|
|||
echo "modloader-version=$MODLOADER_VERSION" >> $GITHUB_OUTPUT
|
||||
echo "index-file=$INDEX_FILE" >> $GITHUB_OUTPUT
|
||||
|
||||
# 根据配置决定是否使用保留文件
|
||||
if [ "$INITIALIZED" = "true" ]; then
|
||||
echo "项目已初始化,将使用保留文件: $KEEP_FILES"
|
||||
echo "use_keep_files=true" >> $GITHUB_OUTPUT
|
||||
|
|
@ -104,7 +100,6 @@ jobs:
|
|||
echo "当前版本: $CURRENT_VERSION"
|
||||
echo "新版本: $NEW_VERSION"
|
||||
|
||||
# 更新版本号
|
||||
if [ "$CURRENT_VERSION" != "$NEW_VERSION" ]; then
|
||||
sed -i "s/version = \"$CURRENT_VERSION\"/version = \"$NEW_VERSION\"/" packet/pack.toml
|
||||
echo "✅ pack.toml 版本已更新为: $NEW_VERSION"
|
||||
|
|
@ -112,7 +107,6 @@ jobs:
|
|||
echo "版本相同,无需更新"
|
||||
fi
|
||||
|
||||
# 显示更新后的文件内容
|
||||
echo "=== 更新后的 pack.toml ==="
|
||||
cat packet/pack.toml
|
||||
else
|
||||
|
|
@ -123,7 +117,6 @@ jobs:
|
|||
if: steps.project-config.outputs.initialized == 'true'
|
||||
run: |
|
||||
echo "=== 更新所有模组 ==="
|
||||
# 进入 packet 目录执行命令
|
||||
cd packet
|
||||
chmod +x ./packwiz
|
||||
./packwiz update --all
|
||||
|
|
@ -142,15 +135,12 @@ jobs:
|
|||
echo "模组加载器版本: ${{ steps.project-config.outputs.modloader-version }}"
|
||||
echo "索引文件: ${{ steps.project-config.outputs.index-file }}"
|
||||
|
||||
# 进入 packet 目录执行初始化
|
||||
cd packet
|
||||
|
||||
# 给 packwiz 添加执行权限
|
||||
echo "=== 设置 packwiz 执行权限 ==="
|
||||
chmod +x ./packwiz
|
||||
ls -la ./packwiz
|
||||
|
||||
# 执行 packwiz 初始化命令
|
||||
./packwiz init \
|
||||
--name "${{ steps.project-config.outputs.name }}" \
|
||||
--author "${{ steps.project-config.outputs.author }}" \
|
||||
|
|
@ -163,11 +153,9 @@ jobs:
|
|||
|
||||
echo "✅ packwiz 初始化完成"
|
||||
|
||||
# 显示生成的 pack.toml
|
||||
echo "=== 生成的 pack.toml ==="
|
||||
cat pack.toml
|
||||
|
||||
# 返回上级目录
|
||||
cd ..
|
||||
|
||||
- name: Display repository files
|
||||
|
|
@ -187,159 +175,160 @@ jobs:
|
|||
echo "packet 目录文件数: $(find packet/ -type f 2>/dev/null | wc -l || echo 0)"
|
||||
echo "packet 目录数: $(find packet/ -type d 2>/dev/null | wc -l || echo 0)"
|
||||
|
||||
- name: Setup SSH
|
||||
run: |
|
||||
mkdir -p ~/.ssh
|
||||
chmod 700 ~/.ssh
|
||||
echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_rsa
|
||||
chmod 600 ~/.ssh/id_rsa
|
||||
cat > ~/.ssh/config << EOF
|
||||
Host $REMOTE_HOST
|
||||
HostName $REMOTE_HOST
|
||||
User $REMOTE_USER
|
||||
Port $SSH_PORT
|
||||
StrictHostKeyChecking no
|
||||
UserKnownHostsFile /dev/null
|
||||
EOF
|
||||
|
||||
# ========== 使用官方 SSH Action 替代手动写入私钥 ==========
|
||||
- name: Clean remote directory (conditionally)
|
||||
if: steps.project-config.outputs.use_keep_files == 'true'
|
||||
run: |
|
||||
ssh $REMOTE_HOST "
|
||||
mkdir -p '$REMOTE_PATH'
|
||||
uses: appleboy/ssh-action@v1.0.3
|
||||
with:
|
||||
host: ${{ env.REMOTE_HOST }}
|
||||
username: ${{ env.REMOTE_USER }}
|
||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
port: ${{ env.SSH_PORT }}
|
||||
script: |
|
||||
mkdir -p '${{ env.REMOTE_PATH }}'
|
||||
echo '=== 清理目录(保留文件不会被删除)==='
|
||||
echo '保留文件: $KEEP_FILES'
|
||||
cd '$REMOTE_PATH'
|
||||
echo '保留文件: ${{ env.KEEP_FILES }}'
|
||||
cd '${{ env.REMOTE_PATH }}'
|
||||
|
||||
# 获取当前目录的所有文件和文件夹(除了隐藏文件和保留文件)
|
||||
find . -mindepth 1 -not -path '*/\.*' | while read item; do
|
||||
should_keep=false
|
||||
for pattern in $KEEP_FILES; do
|
||||
# 检查是否匹配保留模式
|
||||
if [[ \"\$item\" == *\"\$pattern\"* ]] || [[ \"\$item\" == \"\$pattern\" ]] || [[ \"\$pattern\" == *\"*\"* && \"\$item\" == \${pattern%%/*}* ]]; then
|
||||
for pattern in ${{ env.KEEP_FILES }}; do
|
||||
if [[ "$item" == *"$pattern"* ]] || [[ "$item" == "$pattern" ]] || [[ "$pattern" == *"*"* && "$item" == ${pattern%%/*}* ]]; then
|
||||
should_keep=true
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if [ \"\$should_keep\" = \"false\" ]; then
|
||||
echo \"删除: \$item\"
|
||||
rm -rf \"\$item\" 2>/dev/null || true
|
||||
if [ "$should_keep" = "false" ]; then
|
||||
echo "删除: $item"
|
||||
rm -rf "$item" 2>/dev/null || true
|
||||
else
|
||||
echo \"保留: \$item\"
|
||||
echo "保留: $item"
|
||||
fi
|
||||
done
|
||||
echo '目录清理完成'
|
||||
"
|
||||
|
||||
- name: Clean remote directory (full cleanup)
|
||||
if: steps.project-config.outputs.use_keep_files == 'false'
|
||||
run: |
|
||||
ssh $REMOTE_HOST "
|
||||
mkdir -p '$REMOTE_PATH'
|
||||
uses: appleboy/ssh-action@v1.0.3
|
||||
with:
|
||||
host: ${{ env.REMOTE_HOST }}
|
||||
username: ${{ env.REMOTE_USER }}
|
||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
port: ${{ env.SSH_PORT }}
|
||||
script: |
|
||||
mkdir -p '${{ env.REMOTE_PATH }}'
|
||||
echo '=== 完全清理目录(无保留文件)==='
|
||||
find '$REMOTE_PATH' -mindepth 1 -delete 2>/dev/null || true
|
||||
find '${{ env.REMOTE_PATH }}' -mindepth 1 -delete 2>/dev/null || true
|
||||
echo '目录清理完成'
|
||||
"
|
||||
|
||||
- name: Deploy packet directory
|
||||
run: |
|
||||
echo "开始部署 packet 目录..."
|
||||
echo "项目版本: ${{ steps.project-config.outputs.version }}"
|
||||
echo "已初始化: ${{ steps.project-config.outputs.initialized }}"
|
||||
|
||||
# 进入 packet 目录进行打包
|
||||
cd packet
|
||||
|
||||
# 如果有保留文件,创建排除列表
|
||||
if [ "${{ steps.project-config.outputs.use_keep_files }}" = "true" ]; then
|
||||
echo "使用保留文件: $KEEP_FILES"
|
||||
echo "=== 创建排除列表 ==="
|
||||
uses: appleboy/scp-action@v0.1.5
|
||||
with:
|
||||
host: ${{ env.REMOTE_HOST }}
|
||||
username: ${{ env.REMOTE_USER }}
|
||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
port: ${{ env.SSH_PORT }}
|
||||
source: "packet/"
|
||||
target: ${{ env.REMOTE_PATH }}
|
||||
rm: false
|
||||
strip_components: 1
|
||||
overwrite: true
|
||||
|
||||
- name: Remove excluded files if keep_files is true
|
||||
if: steps.project-config.outputs.use_keep_files == 'true'
|
||||
uses: appleboy/ssh-action@v1.0.3
|
||||
with:
|
||||
host: ${{ env.REMOTE_HOST }}
|
||||
username: ${{ env.REMOTE_USER }}
|
||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
port: ${{ env.SSH_PORT }}
|
||||
script: |
|
||||
cd '${{ env.REMOTE_PATH }}'
|
||||
echo "=== 移除需要排除的文件 ==="
|
||||
|
||||
echo ".git" > exclude_list.txt
|
||||
echo ".gitea" >> exclude_list.txt
|
||||
# 排除 .git 和 .gitea
|
||||
rm -rf .git .gitea 2>/dev/null || true
|
||||
|
||||
# 添加保留文件到排除列表
|
||||
for pattern in $KEEP_FILES; do
|
||||
# 排除保留文件列表中的文件
|
||||
for pattern in ${{ env.KEEP_FILES }}; do
|
||||
if [[ "$pattern" == *"*"* ]]; then
|
||||
# 对于通配符模式,找到所有匹配的文件并排除
|
||||
# 通配符模式,删除匹配的文件
|
||||
for file in $pattern; do
|
||||
if [ -e "$file" ]; then
|
||||
echo "$file" >> exclude_list.txt
|
||||
if [ -e "$file" ] && [ ! -d "$file" ]; then
|
||||
echo "删除排除文件: $file"
|
||||
rm -f "$file" 2>/dev/null || true
|
||||
fi
|
||||
done
|
||||
else
|
||||
echo "$pattern" >> exclude_list.txt
|
||||
if [ -e "$pattern" ] && [ ! -d "$pattern" ]; then
|
||||
echo "删除排除文件: $pattern"
|
||||
rm -f "$pattern" 2>/dev/null || true
|
||||
fi
|
||||
fi
|
||||
done
|
||||
|
||||
echo "排除列表:"
|
||||
cat exclude_list.txt
|
||||
|
||||
# 使用排除列表打包 packet 目录内容
|
||||
tar czf - --exclude-from=exclude_list.txt . | ssh $REMOTE_HOST "cd '$REMOTE_PATH' && tar xzf -"
|
||||
rm -f exclude_list.txt
|
||||
else
|
||||
# 没有保留文件,直接打包 packet 目录所有文件
|
||||
echo "无保留文件,部署 packet 目录所有文件"
|
||||
tar czf - --exclude='.git' --exclude='.gitea' . | ssh $REMOTE_HOST "cd '$REMOTE_PATH' && tar xzf -"
|
||||
fi
|
||||
|
||||
echo "✅ packet 目录部署完成"
|
||||
echo "排除文件清理完成"
|
||||
|
||||
- name: Update project configuration on server
|
||||
run: |
|
||||
echo "=== 更新服务器上的项目配置 ==="
|
||||
# 创建项目配置目录并上传配置信息
|
||||
ssh $REMOTE_HOST "
|
||||
mkdir -p '$REMOTE_PATH/.project'
|
||||
cat > '$REMOTE_PATH/.project/globe.json' << 'EOF'
|
||||
uses: appleboy/ssh-action@v1.0.3
|
||||
with:
|
||||
host: ${{ env.REMOTE_HOST }}
|
||||
username: ${{ env.REMOTE_USER }}
|
||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
port: ${{ env.SSH_PORT }}
|
||||
script: |
|
||||
echo '=== 更新服务器上的项目配置 ==='
|
||||
mkdir -p '${{ env.REMOTE_PATH }}/.project'
|
||||
cat > '${{ env.REMOTE_PATH }}/.project/globe.json' << 'EOF'
|
||||
{
|
||||
\"version\": \"${{ steps.project-config.outputs.version }}\",
|
||||
\"initialized\": ${{ steps.project-config.outputs.initialized }},
|
||||
\"name\": \"${{ steps.project-config.outputs.name }}\",
|
||||
\"author\": \"${{ steps.project-config.outputs.author }}\",
|
||||
\"mc-version\": \"${{ steps.project-config.outputs.mc-version }}\",
|
||||
\"modloader\": \"${{ steps.project-config.outputs.modloader }}\",
|
||||
\"modloader-version\": \"${{ steps.project-config.outputs.modloader-version }}\",
|
||||
\"index-file\": \"${{ steps.project-config.outputs.index-file }}\"
|
||||
"version": "${{ steps.project-config.outputs.version }}",
|
||||
"initialized": ${{ steps.project-config.outputs.initialized }},
|
||||
"name": "${{ steps.project-config.outputs.name }}",
|
||||
"author": "${{ steps.project-config.outputs.author }}",
|
||||
"mc-version": "${{ steps.project-config.outputs.mc-version }}",
|
||||
"modloader": "${{ steps.project-config.outputs.modloader }}",
|
||||
"modloader-version": "${{ steps.project-config.outputs.modloader-version }}",
|
||||
"index-file": "${{ steps.project-config.outputs.index-file }}"
|
||||
}
|
||||
EOF
|
||||
echo '服务器项目配置已更新'
|
||||
cat '$REMOTE_PATH/.project/globe.json'
|
||||
"
|
||||
cat '${{ env.REMOTE_PATH }}/.project/globe.json'
|
||||
|
||||
- name: Verify deployment
|
||||
run: |
|
||||
ssh $REMOTE_HOST "
|
||||
uses: appleboy/ssh-action@v1.0.3
|
||||
with:
|
||||
host: ${{ env.REMOTE_HOST }}
|
||||
username: ${{ env.REMOTE_USER }}
|
||||
key: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||
port: ${{ env.SSH_PORT }}
|
||||
script: |
|
||||
echo '=== 部署验证 ==='
|
||||
echo '目录: $REMOTE_PATH'
|
||||
echo '大小: \$(du -sh \"$REMOTE_PATH\")'
|
||||
echo '文件数量: \$(find \"$REMOTE_PATH\" -type f | wc -l)'
|
||||
echo '目录: ${{ env.REMOTE_PATH }}'
|
||||
echo "大小: $(du -sh '${{ env.REMOTE_PATH }}')"
|
||||
echo "文件数量: $(find '${{ env.REMOTE_PATH }}' -type f | wc -l)"
|
||||
echo '=== 项目配置 ==='
|
||||
if [ -f \"$REMOTE_PATH/.project/globe.json\" ]; then
|
||||
cat \"$REMOTE_PATH/.project/globe.json\"
|
||||
if [ -f '${{ env.REMOTE_PATH }}/.project/globe.json' ]; then
|
||||
cat '${{ env.REMOTE_PATH }}/.project/globe.json'
|
||||
else
|
||||
echo '⚠️ 未找到项目配置文件'
|
||||
fi
|
||||
echo '=== pack.toml 内容 ==='
|
||||
if [ -f \"$REMOTE_PATH/pack.toml\" ]; then
|
||||
cat \"$REMOTE_PATH/pack.toml\"
|
||||
if [ -f '${{ env.REMOTE_PATH }}/pack.toml' ]; then
|
||||
cat '${{ env.REMOTE_PATH }}/pack.toml'
|
||||
else
|
||||
echo '⚠️ 未找到 pack.toml 文件'
|
||||
fi
|
||||
echo '=== 目录结构 ==='
|
||||
ls -la '$REMOTE_PATH'
|
||||
ls -la '${{ env.REMOTE_PATH }}'
|
||||
echo '=== 保留文件状态 ==='
|
||||
if [ \"${{ steps.project-config.outputs.use_keep_files }}\" = \"true\" ]; then
|
||||
for pattern in $KEEP_FILES; do
|
||||
if [ -e \"$REMOTE_PATH/\$pattern\" ]; then
|
||||
echo \"✅ 保留文件: \$pattern\"
|
||||
if [ "${{ steps.project-config.outputs.use_keep_files }}" = "true" ]; then
|
||||
for pattern in ${{ env.KEEP_FILES }}; do
|
||||
if [ -e '${{ env.REMOTE_PATH }}/$pattern' ]; then
|
||||
echo "✅ 保留文件: $pattern"
|
||||
else
|
||||
echo \"⚠️ 保留文件不存在: \$pattern\"
|
||||
echo "⚠️ 保留文件不存在: $pattern"
|
||||
fi
|
||||
done
|
||||
else
|
||||
echo '无保留文件设置'
|
||||
fi
|
||||
"
|
||||
fi
|
||||
|
|
@ -2,6 +2,11 @@
|
|||
|
||||
## 更新日志
|
||||
|
||||
2026/05/31 - 1次 v1.0.5
|
||||
|
||||
* 添加CC电脑、网页展示器、超级拴绳、不停吃
|
||||
* 补充添加无中生有附属
|
||||
|
||||
2026/05/30 - 3次 v1.0.4-fix1
|
||||
|
||||
* 补充修正加了救救我的答辩网络
|
||||
|
|
|
|||
BIN
packet/mods/AlwaysEat-5.2.jar
Normal file
BIN
packet/mods/AlwaysEat-5.2.jar
Normal file
Binary file not shown.
BIN
packet/mods/cc-tweaked-1.20.1-forge-1.119.0.jar
Normal file
BIN
packet/mods/cc-tweaked-1.20.1-forge-1.119.0.jar
Normal file
Binary file not shown.
BIN
packet/mods/ccexpand-peripherals-1.5.6.jar
Normal file
BIN
packet/mods/ccexpand-peripherals-1.5.6.jar
Normal file
Binary file not shown.
BIN
packet/mods/exmachinis-deorum-1.20.1-3.1.0.jar
Normal file
BIN
packet/mods/exmachinis-deorum-1.20.1-3.1.0.jar
Normal file
Binary file not shown.
BIN
packet/mods/mcef-forge-2.1.6-1.20.1.jar
Normal file
BIN
packet/mods/mcef-forge-2.1.6-1.20.1.jar
Normal file
Binary file not shown.
BIN
packet/mods/netmusicperipheral-0.1.jar
Normal file
BIN
packet/mods/netmusicperipheral-0.1.jar
Normal file
Binary file not shown.
BIN
packet/mods/superleadrope-1.20.1-1.2.3.jar
Normal file
BIN
packet/mods/superleadrope-1.20.1-1.2.3.jar
Normal file
Binary file not shown.
BIN
packet/mods/webdisplays-2.0.2-1.20.1.jar
Normal file
BIN
packet/mods/webdisplays-2.0.2-1.20.1.jar
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user