[bin] Added a script for creating a local Debian repository.
This commit is contained in:
parent
d0da6740b1
commit
ba5bc76548
36
bin/createdebrepo.py
Executable file
36
bin/createdebrepo.py
Executable file
|
@ -0,0 +1,36 @@
|
|||
#!/usr/bin/python
|
||||
|
||||
'''This script can be created on a Linux machine for creating a local Debian
|
||||
(binary) repository.'''
|
||||
|
||||
import os, os.path
|
||||
|
||||
# Packages apache2 and dpkg-dev must be installed on the machine for enabling
|
||||
# the Debian repository.
|
||||
repoFolder = '/var/www/debianrepo'
|
||||
|
||||
# Create the repo folder if it does not exist
|
||||
binaryFolder = os.path.join(repoFolder, 'binary')
|
||||
if not os.path.exists(binaryFolder):
|
||||
os.makedirs(binaryFolder)
|
||||
|
||||
# Create the script that will allow to recompute indexes when packages are
|
||||
# added or updated into the repository.
|
||||
refreshScript = '''#!/bin/bash
|
||||
cd %s
|
||||
echo "(Re-)building indexes for binary packages..."
|
||||
dpkg-scanpackages binary /dev/null | gzip -9c > binary/Packages.gz
|
||||
echo "Done."
|
||||
''' % repoFolder
|
||||
|
||||
curdir = os.getcwd()
|
||||
os.chdir(repoFolder)
|
||||
scriptName = os.path.join(repoFolder, 'refresh.sh')
|
||||
if not os.path.exists(scriptName):
|
||||
f = file(scriptName, 'w')
|
||||
f.write(refreshScript)
|
||||
f.close()
|
||||
os.system('chmod -R 755 %s' % repoFolder)
|
||||
os.chdir(curdir)
|
||||
print 'Repository created.'
|
||||
|
Loading…
Reference in a new issue