Magellan Linux

Diff of /trunk/pkgtools/mage2mysql.sh

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 803 by niro, Wed Feb 11 16:13:24 2009 UTC revision 806 by niro, Wed Feb 11 16:17:09 2009 UTC
# Line 12  SQL_USER=mage Line 12  SQL_USER=mage
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,
# Line 55  evaluate_categories() Line 57  evaluate_categories()
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  }  }
# Line 103  evaluate_magefile() Line 105  evaluate_magefile()
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)"
# Line 114  evaluate_magefile() Line 116  evaluate_magefile()
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}',
# Line 132  evaluate_magefile() Line 134  evaluate_magefile()
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,
# Line 168  evaluate_magefile() Line 170  evaluate_magefile()
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()
# Line 178  prune_old_packages() Line 180  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 ..."

Legend:
Removed from v.803  
changed lines
  Added in v.806