diff --git a/customList/.gitignore b/customList/.gitignore index d1c9345..69e3953 100644 --- a/customList/.gitignore +++ b/customList/.gitignore @@ -1,3 +1,3 @@ repo __pycache__ -.env \ No newline at end of file +.env diff --git a/customList/Dockerfile b/customList/Dockerfile index 1463130..79bc67a 100644 --- a/customList/Dockerfile +++ b/customList/Dockerfile @@ -1,23 +1,17 @@ FROM alpine:latest -ENV EXTRAURL = "http://mdu.se/" -ENV REPOFILE = "/etc/customMirrors/repoList.list" -ENV DNSSRV = "1.1.1.1" +ENV REPOFILE="/etc/customMirrors/repoList.list" EXTRAURL="http://mdu.se/" +ENV DNSSRV="1.1.1.1" +ENV IPV4FILENAME="MirrorListV4" IPV6FILENAME="MirrorListV6" +ENV CRONTABSET="25 */4 * * *" + RUN apk update && \ apk add python3 py3-pip git bash -# inotify-tools RUN mkdir /etc/customMirrors WORKDIR /etc/customMirrors/ -RUN git clone https://tea.shupogaki.org/YuruC3/Repo-IP-lists && \ - ln -s /etc/customMirrors/Repo-IP-lists/MirrorListV4 /etc/customMirrors/MirrorListV4 && \ - ln -s /etc/customMirrors/Repo-IP-lists/MirrorListV6 /etc/customMirrors/MirrorListV6 - -# RUN touch /etc/customMirrors/MirrorListV6 && \ -# touch /etc/customMirrors/MirrorListV4 - COPY mainDocker.py . COPY whatDomain.py . COPY requirements.txt . @@ -27,14 +21,8 @@ RUN python3 -m venv venv && \ venv/bin/python3 -m pip install --upgrade pip && \ venv/bin/pip3 install -r requirements.txt -COPY cron-jobs /etc/crontabs/ -RUN chmod 0644 /etc/crontabs/cron-jobs && \ - crontab /etc/crontabs/cron-jobs - COPY gitPush.sh . RUN chmod +x ./gitPush.sh CMD ["bash", "init.sh"] - -# CMD ["/usr/sbin/crond", "-f"] diff --git a/customList/docker-compose.yml b/customList/docker-compose.yml index b49c341..dcd78b7 100644 --- a/customList/docker-compose.yml +++ b/customList/docker-compose.yml @@ -10,8 +10,10 @@ services: - GITURLPROTO=https - GITURL=tea.shupogaki.org - GITREPOPATH=YuruC3/Repo-IP-lists.git - - GITEA_TOKEN=0938a2033324b987bbcb2976b56d147a9a00d8a2 + - GITEA_TOKEN=3947a16ee5c3a337d6ff9cfb32d361167d4099d7 - REPOFILE=repoList.list + - IPV4FILENAME=customListNv4 + - IPV6FILENAME=customListNv6 volumes: - ./repoList.list:/etc/customMirrors/repoList.list:ro diff --git a/customList/gitPush.sh b/customList/gitPush.sh index e2490da..a14b49a 100644 --- a/customList/gitPush.sh +++ b/customList/gitPush.sh @@ -1,7 +1,7 @@ #!/bin/sh set -e -WORKPTH="/etc/debmirror/" +WORKPTH="/etc/customMirrors/" REPO_DIR="$WORKPTH/Repo-IP-lists" REPO_URL="${GITURLPROTO}://${GITURL}/${GITREPOPATH}" @@ -28,7 +28,7 @@ git config user.name "UpdateBot" git config user.email "UpdateBot@localhost.local" # Stage the files -git add MirrorListV4 MirrorListV6 +git add $IPV4FILENAME $IPV6FILENAME # Only proceed if there are staged changes if ! git diff --quiet --cached; then diff --git a/customList/init.sh b/customList/init.sh index 6e4f969..d049807 100644 --- a/customList/init.sh +++ b/customList/init.sh @@ -14,4 +14,10 @@ fi echo "nameserver $DNSSRV" > /etc/resolv.conf echo "search local" >> /etc/resolv.conf +git clone https://${GITEA_TOKEN}@${GITURL}/${GITREPOPATH} +ln -s /etc/customMirrors/Repo-IP-lists/$IPV4FILENAME /etc/customMirrors/$IPV4FILENAME +ln -s /etc/customMirrors/Repo-IP-lists/$IPV6FILENAME /etc/customMirrors/$IPV6FILENAME + +echo -n "$CRONTABSET /etc/debmirror/venv/bin/python3 /etc/debmirror/mainDocker.py" > /etc/crontabs/customListCron + exec /usr/sbin/crond -f \ No newline at end of file diff --git a/customList/mainDocker.py b/customList/mainDocker.py index 69e49d8..e11296d 100644 --- a/customList/mainDocker.py +++ b/customList/mainDocker.py @@ -12,9 +12,12 @@ for repoUrl in repoListFile: EXTRAURL.append(repoUrl.strip()) repoListFile.close() +IPV4FILENAME = str(os.getenv("IPV4FILENAME", "MirrorListV4")) +IPV6FILENAME = str(os.getenv("IPV6FILENAME", "MirrorListV6")) + # EXTRAURL = list(os.getenv("EXTRAURL", "https://mdu.se/")) -IPv4FILE = "/etc/customMirrors/MirrorListV4" -IPv6FILE = "/etc/customMirrors/MirrorListV6" +IPv4FILE = f"/etc/customMirrors/{IPV4FILENAME}" +IPv6FILE = f"/etc/customMirrors/{IPV6FILENAME}" def sanitizeURL(inpurl: str): if "https://" in inpurl: @@ -60,7 +63,7 @@ def LeJob(): continue - with open(IPv6FILE, "r",) as fR, open(IPv6FILE, "w",) as fW: + with open(IPv6FILE, "w",) as fW: for url in EXTRAURL: goodurl = sanitizeURL(url) diff --git a/customList/repoList.list b/customList/repoList.list index 6aa499f..141a88e 100644 --- a/customList/repoList.list +++ b/customList/repoList.list @@ -1,4 +1,5 @@ https://www.pixiv.net/ https://pixiv.net/ https://i.pximg.net/ -https://pximg.net/ \ No newline at end of file +https://pximg.net/ +https://wiki.archlinux.org/ \ No newline at end of file diff --git a/customList/repoList.list.example b/customList/repoList.list.example new file mode 100644 index 0000000..6aa499f --- /dev/null +++ b/customList/repoList.list.example @@ -0,0 +1,4 @@ +https://www.pixiv.net/ +https://pixiv.net/ +https://i.pximg.net/ +https://pximg.net/ \ No newline at end of file