did another upgrade, fixed up the instructions
authorivan <ivan>
Tue, 19 Apr 2005 09:48:39 +0000 (09:48 +0000)
committerivan <ivan>
Tue, 19 Apr 2005 09:48:39 +0000 (09:48 +0000)
ANNOUNCE.1.5
README.1.5.7.lastbit
SCHEMA_CHANGE
httemplate/docs/install.html
httemplate/docs/upgrade10.html
install/redhat/9/INSTALL

index 029527f..7ffd8bd 100644 (file)
 - CSV and Excel export of most reports, others to be migrated to new report template
 - prepaid card support updated: now includes a web generator, agent-specific
   prepaid cards, and creates *payments*, not credits
+- preliminary setup for Slony-1 PostgreSQL replication
+- reformatted latex invoice templates w/Text::Template (khoff) and removed
+  some useless fields (quantity/unit price)
+- simplified upgrade instructions
 
 notyet (1.5.8?):
 - account merging UI in exports (for example, to consolidate passwd files from
index 6eae3fd..be6326b 100644 (file)
@@ -9,6 +9,7 @@ if you're upgrading from 1.4.x, see httemplate/docs/upgrade10.html instead.
 ALTER TABLE rate_detail ADD COLUMN ratedetailnum int;
 ALTER TABLE rate_detail ALTER COLUMN ratedetailnum SET DEFAULT nextval('public.rate_detail_ratedetailnum_seq'::text);
 CREATE SEQUENCE rate_detail_ratedetailnum_seq;
+UPDATE rate_detail SET ratedetailnum = nextval('public.rate_detail_ratedetailnum_seq'::text) WHERE ratedetailnum IS NULL;
 ALTER TABLE rate_detail ALTER ratedetailnum SET NOT NULL;
 ALTER TABLE rate_detail ADD PRIMARY KEY (ratedetailnum);
 ALTER TABLE h_rate_detail ADD COLUMN ratedetailnum int;
@@ -16,6 +17,7 @@ ALTER TABLE h_rate_detail ADD COLUMN ratedetailnum int;
 ALTER TABLE type_pkgs ADD typepkgnum int;
 ALTER TABLE type_pkgs ALTER COLUMN typepkgnum SET DEFAULT nextval('public.type_pkgs_typepkgnum_seq'::text);
 CREATE SEQUENCE type_pkgs_typepkgnum_seq;
+UPDATE type_pkgs SET typepkgnum = nextval('public.type_pkgs_typepkgnum_seq'::text) WHERE typepkgnum IS NULL;
 ALTER TABLE type_pkgs ALTER typepkgnum SET NOT NULL;
 ALTER TABLE type_pkgs ADD PRIMARY KEY (typepkgnum);
 ALTER TABLE h_type_pkgs ADD typepkgnum int;
@@ -23,6 +25,7 @@ ALTER TABLE h_type_pkgs ADD typepkgnum int;
 ALTER TABLE cust_bill_pkg ADD billpkgnum int;
 ALTER TABLE cust_bill_pkg ALTER COLUMN billpkgnum SET DEFAULT nextval('public.cust_bill_pkg_billpkgnum_seq'::text);
 CREATE SEQUENCE cust_bill_pkg_billpkgnum_seq;
+UPDATE cust_bill_pkg SET billpkgnum = nextval('public.cust_bill_pkg_billpkgnum_seq'::text) WHERE billpkgnum IS NULL;
 ALTER TABLE cust_bill_pkg ALTER billpkgnum SET NOT NULL;
 ALTER TABLE cust_bill_pkg ADD PRIMARY KEY (billpkgnum);
 ALTER TABLE h_cust_bill_pkg ADD billpkgnum int;
@@ -30,6 +33,7 @@ ALTER TABLE h_cust_bill_pkg ADD billpkgnum int;
 ALTER TABLE pkg_svc ADD pkgsvcnum int;
 ALTER TABLE pkg_svc ALTER COLUMN pkgsvcnum SET DEFAULT nextval('public.pkg_svc_pkgsvcnum_seq'::text);
 CREATE SEQUENCE pkg_svc_pkgsvcnum_seq;
+UPDATE pkg_svc SET pkgsvcnum = nextval('public.pkg_svc_pkgsvcnum_seq'::text) WHERE pkgsvcnum IS NULL;
 ALTER TABLE pkg_svc ALTER pkgsvcnum SET NOT NULL;
 ALTER TABLE pkg_svc ADD PRIMARY KEY (pkgsvcnum);
 ALTER TABLE h_pkg_svc ADD pkgsvcnum int;
@@ -37,6 +41,7 @@ ALTER TABLE h_pkg_svc ADD pkgsvcnum int;
 ALTER TABLE part_svc_router ADD svcrouternum int;
 ALTER TABLE part_svc_router ALTER COLUMN svcrouternum SET DEFAULT nextval('public.part_svc_router_svcrouternum_seq'::text);
 CREATE SEQUENCE part_svc_router_svcrouternum_seq;
+UPDATE part_svc_router SET svcrouternum = nextval('public.part_svc_router_svcrouternum_seq'::text) WHERE svcrouternum IS NULL;
 ALTER TABLE part_svc_router ALTER svcrouternum SET NOT NULL;
 ALTER TABLE part_svc_router ADD PRIMARY KEY (svcrouternum);
 ALTER TABLE h_part_svc_router ADD svcrouternum int;
@@ -44,6 +49,7 @@ ALTER TABLE h_part_svc_router ADD svcrouternum int;
 ALTER TABLE reg_code_pkg ADD codepkgnum int;
 ALTER TABLE reg_code_pkg ALTER COLUMN codepkgnum SET DEFAULT nextval('public.reg_code_pkg_codepkgnum_seq'::text);
 CREATE SEQUENCE reg_code_pkg_codepkgnum_seq;
+UPDATE reg_code_pkg SET codepkgnum = nextval('public.reg_code_pkg_codepkgnum_seq'::text) WHERE codepkgnum IS NULL;
 ALTER TABLE reg_code_pkg ALTER codepkgnum SET NOT NULL;
 ALTER TABLE reg_code_pkg ADD PRIMARY KEY (codepkgnum);
 ALTER TABLE h_reg_code_pkg ADD codepkgnum int;
@@ -51,6 +57,7 @@ ALTER TABLE h_reg_code_pkg ADD codepkgnum int;
 ALTER TABLE virtual_field ADD vfieldnum int;
 ALTER TABLE virtual_field ALTER COLUMN vfieldnum SET DEFAULT nextval('public.virtual_field_vfieldnum_seq'::text);
 CREATE SEQUENCE virtual_field_vfieldnum_seq;
+UPDATE virtual_field SET vfieldnum = nextval('public.virtual_field_vfieldnum_seq'::text) WHERE vfieldnum IS NULL;
 ALTER TABLE virtual_field ALTER vfieldnum SET NOT NULL;
 ALTER TABLE virtual_field ADD PRIMARY KEY (vfieldnum);
 ALTER TABLE h_virtual_field ADD vfieldnum int;
index 4e5dcab..063d01c 100644 (file)
@@ -1,6 +1,6 @@
 FS/bin/freeside-setup
 httemplate/docs/upgrade10.html
-README.1.5.0preX
+README.1.5.X
 httemplate/docs/schema.html
 for new tables: edit FS/FS.pm, add a new FS/FS/table_name.pm
                 and FS/t/table_name.t, edit FS/MANIFEST
index 10c51e7..d742ddb 100644 (file)
@@ -60,13 +60,14 @@ Before installing, you need:
       <li><a href="http://search.cpan.org/dist/NetAddr-IP">NetAddr-IP</a>
       <li><a href="http://search.cpan.org/dist/Chart">Chart</a>
       <li><a href="http://search.cpan.org/dist/Crypt-PasswdMD5">Crypt::PasswdMD5</a>
+      <li><a href="http://search.cpan.org/dist/Locale-SubCountry">Locale::SubCountry</a>
       <li><a href="http://search.cpan.org/dist/JavaScript-RPC">JavaScript::RPC (JavaScript::RPC::Server::CGI)</a>
       <li><a href="http://search.cpan.org/dist/Frontier-RPC">Frontier::RPC</a>
       <li><a href="http://search.cpan.org/dist/Text-CSV_XS">Text::CSV_XS</a>
       <li><a href="http://search.cpan.org/dist/Spreadsheet-WriteExcel">Spreadsheet::WriteExcel</a>
       <li><a href="http://search.cpan.org/dist/IO-stringy">IO-stringy (IO::Scalar)</a>
       <li><a href="http://search.cpan.org/dist/Frontier-RPC">Frontier::RPC (Frontier::RPC2)</a>
-      <li><a href="http://search.cpan.org/search?mode=module&query=MIME::Entity">MIME::Entity (MIME-tools)</a>
+      <li><a href="http://search.cpan.org/dist/MIME-tools">MIME::Entity (MIME-tools)</a>
 <!--      <li><a href="http://search.cpan.org/dist/Crypt-YAPassGen">Crypt::YAPassGen</a> -->
       <li><a href="http://search.cpan.org/search?mode=module&query=MIME::Entity">Fax::Hylafax::Client</a> <i>(Required if using FAX invoice destinations</i>
       <li><a href="http://search.cpan.org/dist/ApacheDBI">Apache::DBI</a> <i>(optional but recommended for better webinterface performance)</i>
index b81268e..38e1591 100644 (file)
@@ -1,8 +1,8 @@
 <pre>
 this is incomplete
 
-install DBD::Pg 1.32 (or, if you're using a Perl version before 5.6, you could try installing DBD::Pg 1.22 with <a href="http://420.am/~ivan/DBD-Pg-1.22-fixvercmp.patch">this patch</a> and commenting out the "use DBD::Pg 1.32" at the top of DBIx/DBSchema/DBD/Pg.pm)
-install DBIx::DBSchema 0.24
+install DBD::Pg 1.32, 1.41 or later (not 1.40) (or, if you're using a Perl version before 5.6, you could try installing DBD::Pg 1.22 with <a href="http://420.am/~ivan/DBD-Pg-1.22-fixvercmp.patch">this patch</a> and commenting out the "use DBD::Pg 1.32" at the top of DBIx/DBSchema/DBD/Pg.pm)
+install DBIx::DBSchema 0.26
 install Net::SSH 0.08
 - If using Apache::ASP, add PerlSetVar RequestBinaryRead Off and PerlSetVar IncludesDir /your/freeside/document/root/ to your Apache configuration and make sure you are using Apache::ASP minimum version 2.55.
 - In httpd.conf, change &lt;Files ~ \.cgi&gt; to  &lt;Files ~ (\.cgi|\.html)&gt;
@@ -55,7 +55,7 @@ CREATE TABLE part_svc_router (
   svcrouternum serial,
   svcpart int NOT NULL,
   routernum int NOT NULL,
-  PRIMARY KEY (svcrouternum),
+  PRIMARY KEY (svcrouternum)
 );
 
 CREATE TABLE addr_block (
@@ -94,6 +94,7 @@ CREATE TABLE svc_external (
   PRIMARY KEY (svcnum)
 );
 
+<!--
 CREATE TABLE part_pkg_temp (
     pkgpart serial NOT NULL,
     pkg varchar(80) NOT NULL,
@@ -159,6 +160,8 @@ DROP INDEX h_part_pkg_temp_pkey;
 CREATE UNIQUE INDEX h_part_pkg_pkey ON h_part_pkg (historynum);
 probably this one?: select setval('h_part_pkg_temp_historynum_seq', ( select max(historynum) from h_part_pkg) );
 probably not this one?: select setval('h_part_pkg_historynum_seq', ( select max(historynum) from h_part_pkg) );
+-->ALTER TABLE part_pkg ADD COLUMN taxclass varchar(80) NULL;
+ALTER TABLE h_part_pkg ADD COLUMN taxclass varchar(80) NULL;
 
 CREATE TABLE cust_pay_refund (
     payrefundnum serial NOT NULL,
@@ -191,8 +194,8 @@ CREATE TABLE part_pkg_option (
   optionnum serial,
   pkgpart int not null,
   optionname varchar(80) not null,
-  optionvalue text NULL
-  PRIMARY KEY (optionnum),
+  optionvalue text NULL,
+  PRIMARY KEY (optionnum)
 );
 CREATE INDEX part_pkg_option1 ON part_pkg_option ( pkgpart );
 CREATE INDEX part_pkg_option2 ON part_pkg_option ( optionname );
@@ -244,7 +247,7 @@ CREATE INDEX reg_code2 ON reg_code ( agentnum );
 CREATE TABLE reg_code_pkg (
     codepkgnum serial,
     codenum int NOT NULL,
-    pkgpart int NOT NULL
+    pkgpart int NOT NULL,
     PRIMARY KEY (codepkgnum)
 );
 CREATE UNIQUE INDEX reg_code_pkg1 ON reg_code_pkg ( codenum, pkgpart );
@@ -287,8 +290,6 @@ ALTER TABLE agent ADD _password varchar(80) NULL;
 ALTER TABLE h_agent ADD _password varchar(80) NULL;
 ALTER TABLE cust_main ADD paycvv varchar(512) NULL;
 ALTER TABLE h_cust_main ADD paycvv varchar(512) NULL;
-ALTER TABLE cust_main ALTER COLUMN payinfo varchar(512) NULL;
-ALTER TABLE h_cust_main ALTER COLUMN payinfo varchar(512) NULL;
 ALTER TABLE cust_main ADD paymask varchar(80) NULL;
 ALTER TABLE h_cust_main ADD paymask varchar(80) NULL;
 ALTER TABLE part_referral ADD disabled char(1) NULL;
@@ -308,20 +309,34 @@ ALTER TABLE h_prepay_credit ADD agentnum integer NULL;
 ALTER TABLE type_pkgs ADD typepkgnum int;
 ALTER TABLE type_pkgs ALTER COLUMN typepkgnum SET DEFAULT nextval('public.type_pkgs_typepkgnum_seq'::text);
 CREATE SEQUENCE type_pkgs_typepkgnum_seq;
+UPDATE type_pkgs SET typepkgnum = nextval('public.type_pkgs_typepkgnum_seq'::text) WHERE typepkgnum IS NULL;
 ALTER TABLE type_pkgs ALTER typepkgnum SET NOT NULL;
 ALTER TABLE type_pkgs ADD PRIMARY KEY (typepkgnum);
+ALTER TABLE h_type_pkgs ADD typepkgnum int;
 
 ALTER TABLE cust_bill_pkg ADD billpkgnum int;
 ALTER TABLE cust_bill_pkg ALTER COLUMN billpkgnum SET DEFAULT nextval('public.cust_bill_pkg_billpkgnum_seq'::text);
 CREATE SEQUENCE cust_bill_pkg_billpkgnum_seq;
+UPDATE cust_bill_pkg SET billpkgnum = nextval('public.cust_bill_pkg_billpkgnum_seq'::text) WHERE billpkgnum IS NULL;
 ALTER TABLE cust_bill_pkg ALTER billpkgnum SET NOT NULL;
 ALTER TABLE cust_bill_pkg ADD PRIMARY KEY (billpkgnum);
+ALTER TABLE h_cust_bill_pkg ADD billpkgnum int;
 
 ALTER TABLE pkg_svc ADD pkgsvcnum int;
 ALTER TABLE pkg_svc ALTER COLUMN pkgsvcnum SET DEFAULT nextval('public.pkg_svc_pkgsvcnum_seq'::text);
 CREATE SEQUENCE pkg_svc_pkgsvcnum_seq;
+UPDATE pkg_svc SET pkgsvcnum = nextval('public.pkg_svc_pkgsvcnum_seq'::text) WHERE pkgsvcnum IS NULL;
 ALTER TABLE pkg_svc ALTER pkgsvcnum SET NOT NULL;
 ALTER TABLE pkg_svc ADD PRIMARY KEY (pkgsvcnum);
+ALTER TABLE h_pkg_svc ADD pkgsvcnum int;
+
+On recent Pg versions:
+
+ALTER TABLE cust_main ALTER COLUMN payinfo varchar(512) NULL;
+ALTER TABLE h_cust_main ALTER COLUMN payinfo varchar(512) NULL;
+
+Or on older Pg versions that don't support altering columns directly:
+
 
 On recent Pg versions:
 
index c32a235..ad69d9b 100644 (file)
@@ -1,32 +1,51 @@
 #!/bin/sh
 
-wget --passive-ftp --continue http://redhat.usu.edu/mirrors/apt4rpm/apt-0.5.5cnc4.1-fr1.20030325a.2.i386.rpm
+wget --passive-ftp --continue http://download.fedora.us/fedora/redhat/9/i386/RPMS.stable/apt-0.5.5cnc6-0.fdr.8.rh90.i386.rpm
 rpm -i apt*i386.rpm
-cp sources.list /etc/apt/
+#cp sources.list /etc/apt/
 apt-get update
 
-apt-get install httpd mod_perl mod_ssl perl-CGI perl-CPAN perl-DBD-MySQL perl-DateManip perl-HTML-Parser perl-HTML-Tagset perl-TimeDate perl-URI perl-libwww-perl perl-suidperl rsync postgresql postgresql-docs postgresql-libs postgresql-server screen zsh lftp cvs gcc # gd openssh
+apt-get install krb5-devel perl-CGI perl-CPAN perl-DateManip perl-HTML-Parser perl-HTML-Tagset perl-TimeDate perl-URI perl-libwww-perl perl-suidperl rsync postgresql postgresql-docs postgresql-libs postgresql-server screen zsh lftp cvs gcc # perl-DBD-MySQL # perl-suidperl gd openssh
 
-wget --passive-ftp --continue http://atrpms.physik.fu-berlin.de/dist/rh9/perl-GD/perl-GD-2.11-7.rh9.at.i386.rpm http://atrpms.physik.fu-berlin.de/dist/rh9/atrpms/atrpms-54-1.rh9.at.noarch.rpm http://atrpms.physik.fu-berlin.de/dist/rh9/gd/gd-2.0.15-1_6.rh9.at.i386.rpm
+wget --passive-ftp --continue http://dl.atrpms.net/production/packages/redhat-9-i386/atrpms/perl-GD-2.16-10.rh9.at.i386.rpm http://dl.atrpms.net/production/packages/common/atrpms/atrpms-61-1.at.noarch.rpm http://dl.atrpms.net/testing/packages/redhat-9-i386/atrpms/gd-2.0.28-1_10.rh9.at.i386.rpm http://dl.atrpms.net/testing/packages/redhat-9-i386/atrpms/libgd2-2.0.28-1_10.rh9.at.i386.rpm
 
-cp /etc/apt/apt.conf /etc/apt/apt.conf.real
+#cp /etc/apt/apt.conf /etc/apt/apt.conf.real
 
-rpm -i gd-2.0.15-1_6.rh9.at.i386.rpm atrpms-54-1.rh9.at.noarch.rpm perl-GD-2.11-7.rh9.at.i386.rpm 
+rpm -i atrpms*.rpm libgd2*i386.rpm gd-2*i386.rpm perl-GD*i386.rpm 
 
-mv /etc/apt/apt.conf.real /etc/apt/apt.conf
+#mv /etc/apt/apt.conf.real /etc/apt/apt.conf
 
-perl -MCPAN -e"install Locale::Country, Net::Whois, Business::CreditCard, \
+apt-get install perl-MIME-tools
+
+perl -MCPAN -e"install Locale::Country, Business::CreditCard, \
                        Mail::Internet, File::CounterFile, FreezeThaw, \
                        String::Approx, Text::Template, DBIx::DataSource, \
                        DBIx::DBSchema, Net::SSH, String::ShellQuote, \
-                       Net::SCP, Apache::ASP, Tie::IxHash, Time::Duration, \
+                       Net::SCP, HTML::Mason, Tie::IxHash, Time::Duration, \
                        HTML::Widgets::SelectLayers, Apache::DBI, \
                        Cache::Cache, Test::Pod, NetAddr::IP, IPC::ShareLite, \
                        Chart::LinesPoints, Net::Whois::Raw, \
-                       Locale::SubCountry, Crypt::PasswdMD5, DBI, DBD::Pg"
+                       Locale::SubCountry, Crypt::PasswdMD5, DBI, DBD::Pg, \
+                       JavaScript::RPC::Server::CGI, Text::CSV_XS, \
+                       Spreadsheet::WriteExcel, Frontier::RPC2, \
+                       File::Temp, Storable"
+
+apt-get remove httpd mod_perl mod_ssl
+#apachetoolbox
+lftpget http://easynews.dl.sourceforge.net/sourceforge/apachetoolbox/Apachetoolbox-install-1.5.72.tar.gz
+tar xzvf Apachetoolbox-install-1.5.72.tar.gz
+(cd Apachetoolbox-1.5.72; sh install.sh)
+# 4
+# 16
+# go
+# export INCLUDES="-I/usr/kerberos/include"
+cd apache_1.3.31;make
+#make certificate TYPE=dummy
+make install
 
 
-#apachetoolbox i guess
+#apache config
+#apache init script 
 
 /usr/sbin/useradd freeside