init push

test release
This commit is contained in:
Sohrab Behdani 2023-05-11 13:52:14 +04:30
parent ae0c8b0344
commit 9d3277c65b
6 changed files with 50 additions and 31 deletions

View file

@ -1,13 +1,14 @@
# This workflow will build an Arch Linux ISO file with the commit on it # This workflow will build an Arch Linux ISO file with the commit on it
name: Build Arch ISO with ArchInstall Commit name: build parchiso per release
on: on:
release: release:
types: types:
- created - created
env: env:
api_key: ${{ secrets.GITHUB_TOKEN }} api_key: ${{ secrets.GITHUB_TOKEN }}
name: ${{ github.event.repository.name }} name: ${{ github.event.repository.name }}
release_name: ${{ github.event.release.name }} release_name: ${{ github.ref_name }}
jobs: jobs:
build: build:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@ -15,10 +16,6 @@ jobs:
image: archlinux:latest image: archlinux:latest
options: --privileged options: --privileged
steps: steps:
- uses: crazy-max/ghaction-import-gpg@v4
with:
gpg_private_key: ${{ secrets.GPG_PRIVATE_KEY }}
passphrase: ${{ secrets.PASSPHRASE }}
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Install Packages via Pacman - name: Install Packages via Pacman
run: pacman -Sy; pacman --noconfirm -S git archiso python python-pip run: pacman -Sy; pacman --noconfirm -S git archiso python python-pip
@ -27,4 +24,5 @@ jobs:
- name: Build image - name: Build image
run: mkarchiso -v iso/ run: mkarchiso -v iso/
- name: Upload iso to the release - name: Upload iso to the release
run: python tools/upload_assest.py run: python tools/upload_asset.py

View file

@ -1,7 +1,7 @@
[Autologin] [Autologin]
Relogin=false Relogin=false
User=liveuser User=liveuser
Session=plasma Session=lxqt
[Theme] [Theme]
Current=breeze-dark Current=

View file

@ -80,7 +80,6 @@ nmap
ntfs-3g ntfs-3g
nvme-cli nvme-cli
open-iscsi open-iscsi
open-vm-tools
openconnect openconnect
openssh openssh
openvpn openvpn
@ -94,9 +93,7 @@ pv
python python
python-psutil python-psutil
python-systemd python-systemd
qemu-guest-agent
refind refind
#reflector
reiserfsprogs reiserfsprogs
rp-pppoe rp-pppoe
rsync rsync
@ -138,6 +135,10 @@ openssl-1.1
openssl openssl
#Desktop #Desktop
lxqt
engrampa
unzip
unrar
#systemutils #systemutils
btop btop
@ -145,8 +146,8 @@ xdg-user-dirs
packagekit-qt5 packagekit-qt5
neofetch neofetch
keepassxc keepassxc
octopi-git vazirmatn-fonts
hack-nerd-fonts
#parchlinuxstuff #parchlinuxstuff
calamares calamares
@ -155,3 +156,5 @@ os-prober
paru paru
parch-branding parch-branding
parch-pacman parch-pacman
parch-emoji-ios

View file

@ -95,11 +95,8 @@ Include = /etc/pacman.d/mirrorlist
[ppr] [ppr]
SigLevel = Optional TrustedOnly SigLevel = Optional TrustedOnly
Server = https://parchlinux.github.io/ppr/$arch Server = https://raw.githubusercontent.com/parchlinux/ppr/main/x86_64/
[pcp]
SigLevel = Optional TrustedOnly
Server = https://parchlinux.github.io/pcp/$arch
# An example of a custom package repository. See the pacman manpage for # An example of a custom package repository. See the pacman manpage for
# tips on creating your own repositories. # tips on creating your own repositories.

View file

@ -1,12 +1,10 @@
#!/usr/bin/env bash #!/usr/bin/env bash
# shellcheck disable=SC2034 # shellcheck disable=SC2034
iso_name="Parchlinux" iso_name="Parchlinux LXQT"
iso_label="PARCH_$(date +%Y%m)" iso_label="Parchlinux_lxqt_$(date +%Y%m)"
iso_publisher="Parch Linux <https://github.com/parch-os/>" iso_publisher="Parch Linux <https://github.com/parch-os/>"
iso_application="Parch Linux Live/Rescue CD" iso_application="Parch Linux Live/Rescue CD"
#gpg_key="BC9DCC3C9A0B047F53065EEBFB8554F927F96E60"
#gpg_signer="KomeilParseh <ahmdparsh129@gmail.com>"
iso_version="$(date +%Y.%m.%d)" iso_version="$(date +%Y.%m.%d)"
install_dir="arch" install_dir="arch"
buildmodes=('iso') buildmodes=('iso')

View file

@ -1,8 +1,9 @@
import hashlib
import logging import logging
import os import os
import sys import sys
from datetime import datetime from datetime import datetime
from glob import glob from pathlib import Path
from github import Github from github import Github
@ -10,9 +11,23 @@ logging.basicConfig(level=logging.INFO, format="%(levelname)s: %(message)s")
api_key = os.getenv("api_key", None) api_key = os.getenv("api_key", None)
current_date = datetime.today().strftime("%Y-%m-%d") current_date = datetime.today().strftime("%Y-%m-%d")
path = glob(r"/__w/parch-iso-template/parch-iso-template/out/*.iso")[
0
] # edit this if your not use in workflow def _compute_sha256(file_name):
hash_sha256 = hashlib.sha256()
with open(file_name, "rb") as f:
for chunk in iter(lambda: f.read(4096), b""):
hash_sha256.update(chunk)
return hash_sha256.hexdigest()
_path = list(Path().cwd().glob("out/*.iso"))[0]
path = _path.as_posix()
file_name = _path.name
hash = _compute_sha256(path)
repo_name = os.getenv("name", None) repo_name = os.getenv("name", None)
release_name = os.getenv("release_name", None) release_name = os.getenv("release_name", None)
@ -27,7 +42,8 @@ if not (repo_name and api_key and release_name):
gh = Github(api_key) gh = Github(api_key)
repo = gh.get_repo(f"parch-os/{repo_name}") print(repo_name, api_key)
repo = gh.get_repo(f"parchlinux/{repo_name}")
release = repo.get_release(release_name) release = repo.get_release(release_name)
@ -36,7 +52,14 @@ logging.info("statrting Upload ISO to release")
release.upload_asset(path=path) release.upload_asset(path=path)
logging.info("ISO upload is done") logging.info("ISO upload is done")
logging.info("statrting Upload ISO gpg key to release") # update release
release.upload_asset( msg = (
"/__w/parch-iso-template/parch-iso-template/iso/public.key" release.body
) # noqa: E501:w + f"""
| name | sha256 |
| :---: | :---: |
| {file_name} | {hash} |"""
)
logging.info("Starting Update release msg with: \n %s" % msg)
release.update_release(name=release.tag_name, message=msg)
logging.info("Release Update is done.")