12 |
SQL_PASS=mage |
SQL_PASS=mage |
13 |
SQL_HOST=localhost |
SQL_HOST=localhost |
14 |
SQL_DB=mage |
SQL_DB=mage |
15 |
|
SQL_TABLE_PACKAGES=mg_packages |
16 |
|
SQL_TABLE_CATEGORIES=mg_categories |
17 |
|
|
18 |
create_database() |
create_database() |
19 |
{ |
{ |
20 |
# create categories table |
# create categories table |
21 |
mysqldo "CREATE TABLE IF NOT EXISTS categories ( |
mysqldo "CREATE TABLE IF NOT EXISTS ${SQL_TABLE_CATEGORIES} ( |
22 |
id int(10) NOT NULL auto_increment, |
id int(10) NOT NULL auto_increment, |
23 |
pcat varchar(255) NOT NULL, |
pcat varchar(255) NOT NULL, |
24 |
PRIMARY KEY (id) |
PRIMARY KEY (id) |
25 |
)" |
)" |
26 |
|
|
27 |
# create packages table |
# create packages table |
28 |
mysqldo "CREATE TABLE IF NOT EXISTS packages ( |
mysqldo "CREATE TABLE IF NOT EXISTS ${SQL_TABLE_PACKAGES} ( |
29 |
id int(10) NOT NULL auto_increment, |
id int(10) NOT NULL auto_increment, |
30 |
pname varchar(255) NOT NULL, |
pname varchar(255) NOT NULL, |
31 |
pver varchar(255) NOT NULL, |
pver varchar(255) NOT NULL, |
32 |
pbuild varchar(255) NOT NULL, |
pbuild varchar(255) NOT NULL, |
33 |
pcat varchar(255) NOT NULL, |
pcat varchar(255) NOT NULL, |
34 |
state varchar(255) NOT NULL, |
state varchar(255) NOT NULL, |
35 |
description varchar(255) default NULL, |
description text default NULL, |
36 |
homepage varchar(255) default NULL, |
homepage varchar(255) default NULL, |
37 |
pkgtype varchar(255) default NULL, |
pkgtype varchar(255) default NULL, |
38 |
depend varchar(255) default NULL, |
depend varchar(255) default NULL, |
57 |
# exclude includes |
# exclude includes |
58 |
[[ ${pcat} = include ]] && continue |
[[ ${pcat} = include ]] && continue |
59 |
|
|
60 |
id=$(mysqldo "SELECT id FROM categories WHERE pcat='${pcat}'") |
id=$(mysqldo "SELECT id FROM ${SQL_TABLE_CATEGORIES} WHERE pcat='${pcat}'") |
61 |
|
|
62 |
# only add if not found |
# only add if not found |
63 |
if [[ -z ${id} ]] |
if [[ -z ${id} ]] |
64 |
then |
then |
65 |
mysqldo "INSERT INTO categories ( pcat ) VALUES ( '${pcat}' )" |
mysqldo "INSERT INTO ${SQL_TABLE_CATEGORIES} ( pcat ) VALUES ( '${pcat}' )" |
66 |
fi |
fi |
67 |
done |
done |
68 |
} |
} |
105 |
SDEPEND=$(echo ${SDEPEND} | sed 's/[^a-zA-Z0-9]\{2\}\ //g') |
SDEPEND=$(echo ${SDEPEND} | sed 's/[^a-zA-Z0-9]\{2\}\ //g') |
106 |
|
|
107 |
# check if there is a pname for the same state |
# check if there is a pname for the same state |
108 |
local id=$(mysqldo "SELECT id FROM packages WHERE pname='${PNAME}' AND state='${STATE}'") |
local id=$(mysqldo "SELECT id FROM ${SQL_TABLE_PACKAGES} WHERE pname='${PNAME}' AND state='${STATE}'") |
109 |
|
|
110 |
# get categorie id |
# get categorie id |
111 |
local pcatid=$(mysqldo "SELECT id FROM categories WHERE pcat='${PCAT}'") |
local pcatid=$(mysqldo "SELECT id FROM ${SQL_TABLE_CATEGORIES} WHERE pcat='${PCAT}'") |
112 |
|
|
113 |
# get current time |
# get current time |
114 |
local time="$(date +%F\ %T)" |
local time="$(date +%F\ %T)" |
116 |
# found, then update |
# found, then update |
117 |
if [[ ! -z ${id} ]] |
if [[ ! -z ${id} ]] |
118 |
then |
then |
119 |
mysqldo "UPDATE packages SET |
mysqldo "UPDATE ${SQL_TABLE_PACKAGES} SET |
120 |
pname='${PNAME}', |
pname='${PNAME}', |
121 |
pver='${PVER}', |
pver='${PVER}', |
122 |
pbuild='${PBUILD}', |
pbuild='${PBUILD}', |
134 |
|
|
135 |
else |
else |
136 |
# else import to database as new |
# else import to database as new |
137 |
mysqldo "INSERT INTO packages ( |
mysqldo "INSERT INTO ${SQL_TABLE_PACKAGES} ( |
138 |
pname, |
pname, |
139 |
pver, |
pver, |
140 |
pbuild, |
pbuild, |
170 |
reset_flags() |
reset_flags() |
171 |
{ |
{ |
172 |
# set all flags to zero |
# set all flags to zero |
173 |
mysqldo "UPDATE packages SET flag='0'" |
mysqldo "UPDATE ${SQL_TABLE_PACKAGES} SET flag='0'" |
174 |
} |
} |
175 |
|
|
176 |
prune_old_packages() |
prune_old_packages() |
180 |
# mysqldo "SELECT id FROM packages WHERE flag='0'" |
# mysqldo "SELECT id FROM packages WHERE flag='0'" |
181 |
|
|
182 |
# delete them |
# delete them |
183 |
mysqldo "DELETE FROM packages WHERE flag='0'" |
mysqldo "DELETE FROM ${SQL_TABLE_PACKAGES} WHERE flag='0'" |
184 |
} |
} |
185 |
|
|
186 |
echo "Processing Categories ..." |
echo "Processing Categories ..." |