Para obtener una versión bonita de este documento, ejecute
$ markdown README > README.html
Ver archivo de licencia.
Ver archivo de autores.
Más detalle en requirements.txt y requirements_prod.txt ; Es mejor usar VirtualEnv y PIP para manejarlos. Pero si insiste en los paquetes (Arch Linux), probablemente desee lo siguiente:
Run python -m venv env .
cd /path/to/archweb && python -m venv ./env/
Active el VirtualEnv.
source ./env/bin/activate
Instalar dependencias a través de pip .
pip install -r requirements.txt
Copie local_settings.py.example a local_settings.py y modifique. Asegúrese de desenchufar la sección de base de datos apropiada (ya sea SQLite o PostgreSQL).
Migrar cambios.
./manage.py migrate
Cargue los accesorios para precopular algunos datos. Si no desea algunos de los datos proporcionados, ajuste la globa del archivo en consecuencia.
./manage.py loaddata main/fixtures/*.json
./manage.py loaddata devel/fixtures/*.json
./manage.py loaddata mirrors/fixtures/*.json
./manage.py loaddata releng/fixtures/*.json
Use los siguientes comandos para iniciar una instancia de servicio
./manage.py runserver
Para completar opcionalmente la base de datos con datos reales:
wget http://mirrors.kernel.org/archlinux/core/os/x86_64/core.db.tar.gz
./manage.py reporead x86_64 core.db.tar.gz
# Package file listing
wget http://mirrors.kernel.org/archlinux/core/os/x86_64/core.files.tar.gz
./manage.py reporead --filesonly x86_64 core.files.tar.gz
Altere la arquitectura y el repositorio para obtener X86_64 y los paquetes de otros reposos si es necesario.
Actualizaciones de la base de datos para paquetes agregados/eliminados
sqlite3 archweb.db < packages/sql/update.sqlite3.sql
Para PostgreSQL, use paquetes/sql/update.postgresql_psycopg2.sql
Para poder crear una cuenta en su entorno de prueba, se requiere un servidor SMTP. Se puede configurar un servidor SMTP de depuración simple utilizando Python y aiosmtpd .
Instalar aiosmtpd
pip install aiosmtpd
Ejecutar el servidor
python -m aiosmtpd -n -l localhost:1025
En local_settings.py Agregue entradas para establecer correo electrónico_host en 'localhost' y correo electrónico_port al 1025.
Instale las dependencias de prueba:
pip install -r requirements_test.txt
A los unittests ejecutar los siguientes comandos:
make collectstatic
make test
Cobertura de carrera:
make coverage
make open-coverage
Para usar la barra de herramientas de depuración de Django, instale django-debug-toolbar y en local_settings.py establecer debug_toolbar en verdadero.
Archweb proporciona múltiples comandos de gestión para importar varios tipos de datos. Una descripción general de los comandos:
Los binarios necesarios para NetBoot basado en IPXE se actualizan copiándolos desde el paquete IPXE al directorio de contenido estático (con el script run_ipxe , los binarios se pueden probar de antemano):
cp -v /usr/share/ipxe/x86_64/ipxe-arch.efi /usr/share/ipxe/ipxe-arch.{ipxe,lkrn} sitestatic/releng
Posteriormente, se crea una firma PGP separada utilizando una tecla Packager habilitada WKD válida para cada archivo:
for artifact in sitestatic/netboot/*.{efi,pxe,lkrn}; do
gpg --sender "User Name <[email protected]>" --detach-sign "$artifact"
done
Arch Linux tiene un papel ansible para Archweb en su repositorio de infraestructura.
vim: set sintax = markdown et: