Skip to content
This repository
Browse code

Move old-3-install instructions to install doc

  • Loading branch information...
commit 446ad6c08391b8633618a59954269ae224f8a3b8 1 parent 40e522d
Steve McMahon authored
28  source/getstarted/index.rst
Source Rendered
@@ -10,13 +10,13 @@ Introduction
10 10
 --------------
11 11
 
12 12
 Plone is developed in the :doc:`Python </getstarted/python>` programming language. doc:`Python </getstarted/python>`You should master Python basics`
13  
-before you can efficiently customize Plone. If you are very new to Python, Plone or software development, 
14  
-it is suggested that you read the `Professional Plone 4 Development book 
  13
+before you can efficiently customize Plone. If you are very new to Python, Plone or software development,
  14
+it is suggested that you read the `Professional Plone 4 Development book
15 15
 <http://www.packtpub.com/professional-plone-4-development/book>`_
16  
-before you attempt to develop your own solutions. 
  16
+before you attempt to develop your own solutions.
17 17
 
18  
-If you quickly want to learn about current best-practices in developing with Plone you should also work through the 
19  
-`Todo list application tutorial <http://tutorialtodoapp.readthedocs.org/en/latest/index.html>`_. 
  18
+If you quickly want to learn about current best-practices in developing with Plone you should also work through the
  19
+`Todo list application tutorial <http://tutorialtodoapp.readthedocs.org/en/latest/index.html>`_.
20 20
 
21 21
 Plone runs on the top of the `Zope 2 application server <zope2.zope.org/>`_, meaning that one Zope 2 server process
22 22
 can contain and host several Plone sites. Plone also uses Zope 3 components. Zope 3 is not an upgrade for Zope 2,
@@ -30,10 +30,10 @@ Installing Plone
30 30
 ------------------
31 31
 
32 32
 It is recommended that you do Plone development on Linux or OS X. Development on Windows is possible,
33  
-but you need to have much more experience dealing with Python and Windows related problems, so starting 
  33
+but you need to have much more experience dealing with Python and Windows related problems, so starting
34 34
 on Windows is not so easy.
35 35
 
36  
-See :doc:`installation instructions </getstarted/installation>` for how to create a Plone installation 
  36
+See :doc:`installation instructions </getstarted/installation>` for how to create a Plone installation
37 37
 suitable for development.
38 38
 
39 39
 Non-programming approaches for customizing Plone
@@ -43,7 +43,7 @@ If you lack programming skill or resources, you can still get some things done i
43 43
 
44 44
 * `Plomino is a a powerful and flexible web-based application builder for Plone <http://www.plomino.net>`_
45 45
 
46  
-* `PloneFormGen allows you to build forms in a web browser <http://plone.org/products/ploneformgen>`_ 
  46
+* `PloneFormGen allows you to build forms in a web browser <http://plone.org/products/ploneformgen>`_
47 47
 
48 48
 * Plone 4+ comes with through-the-web Dexterity content type editor
49 49
 
@@ -61,18 +61,18 @@ Plone add-ons as Python packages
61 61
 
62 62
 Plone sites can be customized by installing *Plone add-ons*, which add or customize functionality.
63 63
 You can install existing add-ons that others have developed or you can develop and install your own add-ons.
64  
-Add-ons are developed and distributed as 
65  
-`Python packages <http://packages.python.org/distribute/setuptools.html>`_. Many open-source Python packages, 
  64
+Add-ons are developed and distributed as
  65
+`Python packages <http://packages.python.org/distribute/setuptools.html>`_. Many open-source Python packages,
66 66
 including Plone add-ons, are available from `PyPI (the Python Package index) <http://pypi.python.org>`_.
67 67
 
68  
-Plone uses a tool called `Buildout <http://www.buildout.org/>`_ to manage the set of Python packages 
  68
+Plone uses a tool called `Buildout <http://www.buildout.org/>`_ to manage the set of Python packages
69 69
 that are part of your Plone installation.
70 70
 Using Buildout involves using the ``buildout.cfg`` configuration file and the ``bin/buildout`` command.
71 71
 
72 72
 .. note ::
73 73
 
74 74
   In prior versions of Plone and Zope, add-ons were referred to as "products" and they were installed by copying
75  
-  them into a special folder called ``products``. This method is now deprecated in favor of using 
  75
+  them into a special folder called ``products``. This method is now deprecated in favor of using
76 76
   standard Python packages, managed by Buildout.
77 77
 
78 78
 
@@ -173,8 +173,8 @@ Hello World Tutorial
173 173
 
174 174
 We have a :doc:`tutorial </reference_manuals/active/helloworld/index>` introducing the basics of Plone development.
175 175
 
176  
-The tutorial covers a basic form, a custom content-type, and a dynamic view. 
177  
-It also has detailed sections on building a development environment, installing Plone, and 
  176
+The tutorial covers a basic form, a custom content-type, and a dynamic view.
  177
+It also has detailed sections on building a development environment, installing Plone, and
178 178
 creating an add-on package for your development code.
179 179
 
180 180
 More info
351  source/getstarted/installation.rst
Source Rendered
@@ -123,7 +123,7 @@ Instructions are tested for the *Ubuntu 10.04 Long Term Support* release.
123 123
 
124 124
     ..note::
125 125
 
126  
-      If you use Debian 6 [Squeeze] replace libreadline-gp1v2 with libreadline-dev 
  126
+      If you use Debian 6 [Squeeze] replace libreadline-gp1v2 with libreadline-dev
127 127
 
128 128
 
129 129
    Install also version control software needed often when developing with Plone::
@@ -349,3 +349,352 @@ Installer source code
349 349
 
350 350
 * https://github.com/plone/Installers-UnifiedInstaller
351 351
 
  352
+================================================================
  353
+Installing old Plone 3.3 with Python 2.4
  354
+================================================================
  355
+
  356
+.. admonition:: Description
  357
+
  358
+   These are instructions for (re)installing old Plone 3.3 sites. These instructions
  359
+   are mainly useful if you need to get Plone 3.x series to run on a new server
  360
+   or on a local computer for maintance.
  361
+
  362
+.. contents:: :local:
  363
+
  364
+Introduction
  365
+================================
  366
+
  367
+Due to the external changes introduced in Python ecosystem since the Plone 3.3
  368
+release a lot of things are broken if you are trying to reinstall
  369
+Plone using non-modified config files and tools.
  370
+
  371
+Here is a list where you can update steps which are needed
  372
+to get old sites running again.
  373
+
  374
+Plone 3.3 installation
  375
+======================
  376
+
  377
+OS X Preparations
  378
+-----------------
  379
+
  380
+Install Homebrew
  381
+~~~~~~~~~~~~~~~~
  382
+
  383
+Needed to get Python 2.4 on OSX.
  384
+
  385
+If you have not Apple's XCode installed, follow `Homebrew installation instructions <https://github.com/mxcl/homebrew/wiki/Installation>`_.
  386
+
  387
+Run::
  388
+
  389
+    ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"
  390
+
  391
+Install Python 2.4
  392
+~~~~~~~~~~~~~~~~~~
  393
+
  394
+Plone 3.x needs Python 2.4 explicitly.
  395
+
  396
+Install it using Homebrew::
  397
+
  398
+    /usr/local/bin/brew tap homebrew/versions
  399
+    /usr/local/bin/brew install python24
  400
+
  401
+Now you have ``/usr/local/Cellar/python24/2.4.6/bin/python2.4`` command.
  402
+
  403
+Linux
  404
+-----
  405
+
  406
+You'll need the GNU build tools.
  407
+On Debian/Ubuntu packages, this is in a build-essentials metapackage.
  408
+On other platforms, install gcc, gmake, gpp, libjpeg-dev, libz-dev.
  409
+
  410
+If you are operating on an older Linux platform, you may have Python 2.4 pre-installed or available as a package.
  411
+If so, use that.
  412
+
  413
+On older systems (typically prior to 64-bit), there's a good chance that Plone's Unified Installer will work for you. Try it first.
  414
+
  415
+On newer Linux systems, Python 2.4 may not be available as a package, and may not build simply from source.
  416
+
  417
+If that's the case, install the git package and clone the collective buildout.python kit::
  418
+
  419
+    git clone git://github.com/collective/buildout.python.git
  420
+
  421
+Use that with your current Python to build a local Python-2.4.
  422
+The buildout.python kit deals with several problems of installing an old Python on a new platform.
  423
+
  424
+Create site folder
  425
+------------------------------------------
  426
+
  427
+Place the reinstallation site in a folder ``~/code/myplone3site`` (example).
  428
+
  429
+    mkdir ~/code/myplone3site
  430
+
  431
+Create Python virtualenv
  432
+------------------------------------------
  433
+
  434
+This is needed in order to make sure something runs well with buildout, old setuptools
  435
+and old broken Python stuff in generally::
  436
+
  437
+    cd ~/code/myplone3site
  438
+    curl -L -o virtualenv.py https://raw.github.com/pypa/virtualenv/1.7.2/virtualenv.py
  439
+    /usr/local/Cellar/python24/2.4.6/bin/python2.4 virtualenv.py --no-site-packages venv
  440
+
  441
+We need to upgrade Python 2.4 installation to use latest Distribute (setuptools)::
  442
+
  443
+    source venv/bin/activate
  444
+    easy_install -U Distribute
  445
+
  446
+We also need Python imaging package and simplejson which are often used libraries::
  447
+
  448
+    easy_install Pillow==1.7.8      # PY24 compatible
  449
+    easy_install simplejson==2.3.3  # PY24 compatible
  450
+
  451
+.. note ::
  452
+
  453
+    Old 1.7.2 virtualenv required as above. Latest versions are not Python 2.4 compatible.
  454
+
  455
+Copy in sites files
  456
+------------------------------------------
  457
+
  458
+This includes
  459
+
  460
+* Buildout.cfg
  461
+
  462
+* Data.fs
  463
+
  464
+* Creating basic folder structure
  465
+
  466
+Example::
  467
+
  468
+    cd ~/code/myplone3site
  469
+    mkdir src
  470
+    mkdir eggs
  471
+    mkdir downloads
  472
+    mkdir var
  473
+    mkdir products
  474
+    mkdir var/filestorage
  475
+    cp .../xxx/buildout.cfg . # Copy in buildout config from somewhere
  476
+    cp .../xxx/Data.fs var/filestorage # Copy in database from somewhere
  477
+
  478
+    # cp -r ../xxx/src .  # Copy custom source code products if your site have them
  479
+
  480
+    # Note: You also need to copy "blobstorage" if your Plone 3.x
  481
+    # site was configured to use file-system backed filestorage
  482
+    # but this was not the default option
  483
+
  484
+.. note ::
  485
+
  486
+    If your buildout contains unpinned eggs you'll get version conflicts
  487
+    when running the buildout. Please see developer.plone.org Troubleshooting
  488
+    section how to solve these.
  489
+
  490
+More info
  491
+
  492
+* http://plone.org/documentation/kb/copying-a-plone-site
  493
+
  494
+Rebootstrap buildout on your local computer
  495
+------------------------------------------
  496
+
  497
+This creates buildout script and paths to conform your local computer folder structure.
  498
+We need to update Buildout's ``bootstrap.py``, since the release of Buildout 2.x have
  499
+broken the old installations. Also, we need to use a virtualenv'ed Python,
  500
+since old Buildout versions have a bug they incorrectly try to modify
  501
+system-wide Python installation files-
  502
+
  503
+Enter ``~/code/myplone3site``.
  504
+
  505
+Run::
  506
+
  507
+    cd ~/code/myplone3site
  508
+
  509
+    # Use Python interpreter from the virtualenv
  510
+    source venv/bin/activate
  511
+
  512
+    # Download Plone 3.x compatible Buildout bootstrapper script
  513
+    curl -L -o bootstrap.py http://downloads.buildout.org/1/bootstrap.py
  514
+
  515
+    # Creates bin/buildout
  516
+    python boostrap.py
  517
+
  518
+More info
  519
+
  520
+* http://stackoverflow.com/q/14817138/315168
  521
+
  522
+Run buildout
  523
+------------------------------------------
  524
+
  525
+This should fetch Plone 3.3 Python eggs from *plone.org* and *pypi.python.org*
  526
+and create ``bin/instance`` launch script for them using buildout::
  527
+
  528
+    cd ~/code/myplone3site
  529
+    /usr/local/Cellar/python24/2.4.6/bin/python2.4 bootstrap.py
  530
+    bin/buildout
  531
+
  532
+    # The followind step is only needed if your buildout.cfg
  533
+    # users Mr. Developer tool to manager source code repotories
  534
+    # ... also bin/buildout above does not complete on the first time
  535
+    # but bin/develop script gets created.
  536
+    # This command will checkout
  537
+    bin/develop co ""
  538
+
  539
+    # Now you can run buildout and it should complete
  540
+    bin/buildout
  541
+
  542
+If the network times out just keep hitting ``bin/buildout``
  543
+until it completes succesfully.
  544
+
  545
+Start site
  546
+------------------------------------------
  547
+
  548
+Try starting the site::
  549
+
  550
+    bin/instance fg
  551
+
  552
+Enter ``http://localhost:[SOMEPORT]`` with your browser as stated by
  553
+Zope start-up info.
  554
+
  555
+Troubleshooting
  556
+================================================================
  557
+
  558
+Asssertation error with SVN
  559
+------------------------------------------
  560
+
  561
+When running bin/buildout.
  562
+
  563
+Example::
  564
+
  565
+    _info.py", line 233, in get_svn_revision
  566
+    IndexError: list index out of range
  567
+
  568
+Make sure setuptools / distribute eggs being used is up-to-date.
  569
+
  570
+Mr. Developer tries checkout packages too greedily
  571
+------------------------------------------------------------------------------------
  572
+
  573
+Mr. Developer tries to auto checkout packages even if they are not
  574
+destined to do so. This causes buildout to run all kind of
  575
+shitty errors.
  576
+
  577
+On your first virgin buildout run the following should not happen::
  578
+
  579
+    INFO: Queued 'collective.batch' for checkout.
  580
+    INFO: Queued 'collective.eclipsescripts' for checkout.
  581
+    INFO: Queued 'collective.externalcontent' for checkout.
  582
+    INFO: Queued 'collective.fastview' for checkout.
  583
+
  584
+But if it is happening add in buildout.cfg::
  585
+
  586
+    [versions]
  587
+    mr.developer = 1.21
  588
+
  589
+(Also you might need to nuke src/ folder in this point)
  590
+
  591
+Re-run buildout.
  592
+
  593
+Manually checkout packages with::
  594
+
  595
+    bin/develop co ""
  596
+
  597
+Bad eggs gets picked up
  598
+-------------------------
  599
+
  600
+You see eggs of bad version in bad location in Python tracebacks::
  601
+
  602
+      File "/Users/mikko/code/buildout-cache/eggs/setuptools-0.6c11-py2.4.egg/setuptools/command/egg_info.py", line 85, in finalize_options
  603
+      File "/Users/mikko/code/buildout-cache/eggs/setuptools-0.6c11-py2.4.egg/setuptools/command/egg_info.py", line 185, in tags
  604
+      File "/Users/mikko/code/buildout-cache/eg
  605
+
  606
+setuptools-06c11 is old and buggy and breaks your buildout.
  607
+
  608
+Make sure you don't have global buildout defaults file::
  609
+
  610
+    rm ~/.buildout/default.cfg
  611
+
  612
+Other troubleshooting
  613
+-------------------------
  614
+
  615
+See and read the source code of
  616
+
  617
+* https://github.com/miohtama/senorita.plonetool
  618
+
  619
+Workaround UnicodeDecodeErrors
  620
+----------------------------------
  621
+
  622
+Old sites may give you plenty of these::
  623
+
  624
+
  625
+    Module Products.CMFCore.ActionInformation, line 151, in getInfoData
  626
+    UnicodeDecodeError: <exceptions.UnicodeDecodeError instance at 0x10f87efc8
  627
+
  628
+Make UTF-8 to Python default encoding::
  629
+
  630
+    cd ~/code/myplone3site
  631
+    nano venv/lib/python2.4/site.py
  632
+
  633
+Change line::
  634
+
  635
+      encoding = "ascii" # Default value set by _PyUnicode_Init()
  636
+
  637
+To::
  638
+
  639
+      encoding = "utf-8" # Default value set by _PyUnicode_Init()
  640
+
  641
+Example pindowns
  642
+-------------------
  643
+
  644
+Here are collection of some Plone 3 version pindowns you might need to add into your custom buildout.cfg::
  645
+
  646
+
  647
+         [versions]
  648
+         # zope.app.catalog 3.6.0 requires zope.index 3.5.0
  649
+         # zope.index 3.5.0 requires 'ZODB3>=3.8.0b1'
  650
+         # This will conflict with the fake ZODB egg.
  651
+         zope.app.catalog = 3.5.2
  652
+         zope.component = 3.5.1
  653
+         plone.app.z3cform=0.4.2
  654
+         plone.recipe.zope2instance = 3.6
  655
+         zope.sendmail = 3.6.0
  656
+         Products.PluggableAuthService = 1.6.2
  657
+         plone.z3cform = 0.5.8
  658
+         five.intid=0.4.2
  659
+         plone.reload = 0.11
  660
+         Products.GenericSetup = 1.5.0
  661
+
  662
+         #collective.dancing pindowns
  663
+         zope.location=3.7.0
  664
+         zope.schema=3.5.1
  665
+         #zope.sendmail=3.5.1
  666
+         #five.intid=0.3.0
  667
+
  668
+         #plone.z3cform pindowns
  669
+         zope.proxy = 3.6.1
  670
+         transaction = 1.1.1
  671
+         zc.queue = 1.2.1
  672
+         zope.copy = 3.5.0
  673
+
  674
+         # Other fixes
  675
+         zope.i18n = 3.8.0
  676
+         z3c.batching = 1.1.0
  677
+
  678
+         #0.9.8> does not support python2.4 anymore
  679
+         cssutils=0.9.7
  680
+
  681
+         #0.6 caused Plone startup to fail, maybe requires newer Plone
  682
+         betahaus.emaillogin=0.5
  683
+
  684
+         #Newest stable release
  685
+         Products.TinyMCE=1.2.7
  686
+
  687
+         #Has fix to imagewidget preview tag http://dev.plone.org/archetypes/changeset/12227
  688
+         #Before this pindown 1.5.15 was used
  689
+         Products.Archetypes=1.5.16
  690
+
  691
+
  692
+         #2.1.1 caused problem with missing site.hooks
  693
+         #2.1 causing problems with catalog http://dev.plone.org/ticket/11396
  694
+         archetypes.schemaextender=2.0.3
  695
+
  696
+         #4.x tries to import from plone.app.blob which isn't in Plone 3. Pindown to the current version on the live site
  697
+         Products.SimpleAttachment=3.4
  698
+
  699
+         collective.singing=0.6.14_1
  700
+         simplejson=2.3.3
3  source/reference_manuals/active/deployment/index.rst
Source Rendered
... ...
@@ -1,5 +1,5 @@
1 1
 ========================================================================
2  
-Deploying and installing Plone in production 
  2
+Deploying and installing Plone in production
3 3
 ========================================================================
4 4
 
5 5
 .. admonition:: Description
@@ -22,4 +22,3 @@ Deploying and installing Plone in production
22 22
     logs
23 23
     packing
24 24
     backup
25  
-    old_3
349  source/reference_manuals/active/deployment/old_3.rst
Source Rendered
... ...
@@ -1,349 +0,0 @@
1  
-================================================================
2  
-Installing old Plone 3.3 with Python 2.4
3  
-================================================================
4  
-
5  
-.. admonition:: Description
6  
-
7  
-   These are instructions for (re)installing old Plone 3.3 sites. These instructions
8  
-   are mainly useful if you need to get Plone 3.x series to run on a new server
9  
-   or on a local computer for maintance.
10  
-
11  
-.. contents:: :local:
12  
-
13  
-Introduction
14  
-================================
15  
-
16  
-Due to the external changes introduced in Python ecosystem since the Plone 3.3
17  
-release a lot of things are broken if you are trying to reinstall
18  
-Plone using non-modified config files and tools.
19  
-
20  
-Here is a list where you can update steps which are needed
21  
-to get old sites running again.
22  
-
23  
-Plone 3.3 installation
24  
-======================
25  
-
26  
-OS X Preparations
27  
------------------
28  
-
29  
-Install Homebrew
30  
-~~~~~~~~~~~~~~~~
31  
-
32  
-Needed to get Python 2.4 on OSX.
33  
-
34  
-If you have not Apple's XCode installed, follow `Homebrew installation instructions <https://github.com/mxcl/homebrew/wiki/Installation>`_.
35  
-
36  
-Run::
37  
-
38  
-    ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"
39  
-
40  
-Install Python 2.4
41  
-~~~~~~~~~~~~~~~~~~
42  
-
43  
-Plone 3.x needs Python 2.4 explicitly.
44  
-
45  
-Install it using Homebrew::
46  
-
47  
-    /usr/local/bin/brew tap homebrew/versions
48  
-    /usr/local/bin/brew install python24
49  
-
50  
-Now you have ``/usr/local/Cellar/python24/2.4.6/bin/python2.4`` command.
51  
-
52  
-Linux
53  
------
54  
-
55  
-You'll need the GNU build tools.
56  
-On Debian/Ubuntu packages, this is in a build-essentials metapackage.
57  
-On other platforms, install gcc, gmake, gpp, libjpeg-dev, libz-dev.
58  
-
59  
-If you are operating on an older Linux platform, you may have Python 2.4 pre-installed or available as a package.
60  
-If so, use that.
61  
-
62  
-On older systems (typically prior to 64-bit), there's a good chance that Plone's Unified Installer will work for you. Try it first.
63  
-
64  
-On newer Linux systems, Python 2.4 may not be available as a package, and may not build simply from source.
65  
-
66  
-If that's the case, install the git package and clone the collective buildout.python kit::
67  
-
68  
-    git clone git://github.com/collective/buildout.python.git
69  
-
70  
-Use that with your current Python to build a local Python-2.4.
71  
-The buildout.python kit deals with several problems of installing an old Python on a new platform.
72  
-
73  
-Create site folder
74  
-------------------------------------------
75  
-
76  
-Place the reinstallation site in a folder ``~/code/myplone3site`` (example).
77  
-
78  
-    mkdir ~/code/myplone3site
79  
-
80  
-Create Python virtualenv
81  
-------------------------------------------
82  
-
83  
-This is needed in order to make sure something runs well with buildout, old setuptools
84  
-and old broken Python stuff in generally::
85  
-
86  
-    cd ~/code/myplone3site
87  
-    curl -L -o virtualenv.py https://raw.github.com/pypa/virtualenv/1.7.2/virtualenv.py
88  
-    /usr/local/Cellar/python24/2.4.6/bin/python2.4 virtualenv.py --no-site-packages venv
89  
-
90  
-We need to upgrade Python 2.4 installation to use latest Distribute (setuptools)::
91  
-
92  
-    source venv/bin/activate
93  
-    easy_install -U Distribute
94  
-
95  
-We also need Python imaging package and simplejson which are often used libraries::
96  
-
97  
-    easy_install Pillow==1.7.8      # PY24 compatible
98  
-    easy_install simplejson==2.3.3  # PY24 compatible
99  
-
100  
-.. note ::
101  
-
102  
-    Old 1.7.2 virtualenv required as above. Latest versions are not Python 2.4 compatible.
103  
-
104  
-Copy in sites files
105  
-------------------------------------------
106  
-
107  
-This includes
108  
-
109  
-* Buildout.cfg
110  
-
111  
-* Data.fs
112  
-
113  
-* Creating basic folder structure
114  
-
115  
-Example::
116  
-
117  
-    cd ~/code/myplone3site
118  
-    mkdir src
119  
-    mkdir eggs
120  
-    mkdir downloads
121  
-    mkdir var
122  
-    mkdir products
123  
-    mkdir var/filestorage
124  
-    cp .../xxx/buildout.cfg . # Copy in buildout config from somewhere
125  
-    cp .../xxx/Data.fs var/filestorage # Copy in database from somewhere
126  
-
127  
-    # cp -r ../xxx/src .  # Copy custom source code products if your site have them
128  
-
129  
-    # Note: You also need to copy "blobstorage" if your Plone 3.x
130  
-    # site was configured to use file-system backed filestorage
131  
-    # but this was not the default option
132  
-
133  
-.. note ::
134  
-
135  
-    If your buildout contains unpinned eggs you'll get version conflicts
136  
-    when running the buildout. Please see developer.plone.org Troubleshooting
137  
-    section how to solve these.
138  
-
139  
-More info
140  
-
141  
-* http://plone.org/documentation/kb/copying-a-plone-site
142  
-
143  
-Rebootstrap buildout on your local computer
144  
-------------------------------------------
145  
-
146  
-This creates buildout script and paths to conform your local computer folder structure.
147  
-We need to update Buildout's ``bootstrap.py``, since the release of Buildout 2.x have
148  
-broken the old installations. Also, we need to use a virtualenv'ed Python,
149  
-since old Buildout versions have a bug they incorrectly try to modify
150  
-system-wide Python installation files-
151  
-
152  
-Enter ``~/code/myplone3site``.
153  
-
154  
-Run::
155  
-
156  
-    cd ~/code/myplone3site
157  
-
158  
-    # Use Python interpreter from the virtualenv
159  
-    source venv/bin/activate
160  
-
161  
-    # Download Plone 3.x compatible Buildout bootstrapper script
162  
-    curl -L -o bootstrap.py http://downloads.buildout.org/1/bootstrap.py
163  
-
164  
-    # Creates bin/buildout
165  
-    python boostrap.py
166  
-
167  
-More info
168  
-
169  
-* http://stackoverflow.com/q/14817138/315168
170  
-
171  
-Run buildout
172  
-------------------------------------------
173  
-
174  
-This should fetch Plone 3.3 Python eggs from *plone.org* and *pypi.python.org*
175  
-and create ``bin/instance`` launch script for them using buildout::
176  
-
177  
-    cd ~/code/myplone3site
178  
-    /usr/local/Cellar/python24/2.4.6/bin/python2.4 bootstrap.py
179  
-    bin/buildout
180  
-
181  
-    # The followind step is only needed if your buildout.cfg
182  
-    # users Mr. Developer tool to manager source code repotories
183  
-    # ... also bin/buildout above does not complete on the first time
184  
-    # but bin/develop script gets created.
185  
-    # This command will checkout
186  
-    bin/develop co ""
187  
-
188  
-    # Now you can run buildout and it should complete
189  
-    bin/buildout
190  
-
191  
-If the network times out just keep hitting ``bin/buildout``
192  
-until it completes succesfully.
193  
-
194  
-Start site
195  
-------------------------------------------
196  
-
197  
-Try starting the site::
198  
-
199  
-    bin/instance fg
200  
-
201  
-Enter ``http://localhost:[SOMEPORT]`` with your browser as stated by
202  
-Zope start-up info.
203  
-
204  
-Troubleshooting
205  
-================================================================
206  
-
207  
-Asssertation error with SVN
208  
-------------------------------------------
209  
-
210  
-When running bin/buildout.
211  
-
212  
-Example::
213  
-
214  
-    _info.py", line 233, in get_svn_revision
215  
-    IndexError: list index out of range
216  
-
217  
-Make sure setuptools / distribute eggs being used is up-to-date.
218  
-
219  
-Mr. Developer tries checkout packages too greedily
220  
-------------------------------------------------------------------------------------
221  
-
222  
-Mr. Developer tries to auto checkout packages even if they are not
223  
-destined to do so. This causes buildout to run all kind of
224  
-shitty errors.
225  
-
226  
-On your first virgin buildout run the following should not happen::
227  
-
228  
-    INFO: Queued 'collective.batch' for checkout.
229  
-    INFO: Queued 'collective.eclipsescripts' for checkout.
230  
-    INFO: Queued 'collective.externalcontent' for checkout.
231  
-    INFO: Queued 'collective.fastview' for checkout.
232  
-
233  
-But if it is happening add in buildout.cfg::
234  
-
235  
-    [versions]
236  
-    mr.developer = 1.21
237  
-
238  
-(Also you might need to nuke src/ folder in this point)
239  
-
240  
-Re-run buildout.
241  
-
242  
-Manually checkout packages with::
243  
-
244  
-    bin/develop co ""
245  
-
246  
-Bad eggs gets picked up
247  
--------------------------
248  
-
249  
-You see eggs of bad version in bad location in Python tracebacks::
250  
-
251  
-      File "/Users/mikko/code/buildout-cache/eggs/setuptools-0.6c11-py2.4.egg/setuptools/command/egg_info.py", line 85, in finalize_options
252  
-      File "/Users/mikko/code/buildout-cache/eggs/setuptools-0.6c11-py2.4.egg/setuptools/command/egg_info.py", line 185, in tags
253  
-      File "/Users/mikko/code/buildout-cache/eg
254  
-
255  
-setuptools-06c11 is old and buggy and breaks your buildout.
256  
-
257  
-Make sure you don't have global buildout defaults file::
258  
-
259  
-    rm ~/.buildout/default.cfg
260  
-
261  
-Other troubleshooting
262  
--------------------------
263  
-
264  
-See and read the source code of
265  
-
266  
-* https://github.com/miohtama/senorita.plonetool
267  
-
268  
-Workaround UnicodeDecodeErrors
269  
-----------------------------------
270  
-
271  
-Old sites may give you plenty of these::
272  
-
273  
-
274  
-    Module Products.CMFCore.ActionInformation, line 151, in getInfoData
275  
-    UnicodeDecodeError: <exceptions.UnicodeDecodeError instance at 0x10f87efc8
276  
-
277  
-Make UTF-8 to Python default encoding::
278  
-
279  
-    cd ~/code/myplone3site
280  
-    nano venv/lib/python2.4/site.py
281  
-
282  
-Change line::
283  
-
284  
-      encoding = "ascii" # Default value set by _PyUnicode_Init()
285  
-
286  
-To::
287  
-
288  
-      encoding = "utf-8" # Default value set by _PyUnicode_Init()
289  
-
290  
-Example pindowns
291  
--------------------
292  
-
293  
-Here are collection of some Plone 3 version pindowns you might need to add into your custom buildout.cfg::
294  
-
295  
-
296  
-         [versions]
297  
-         # zope.app.catalog 3.6.0 requires zope.index 3.5.0
298  
-         # zope.index 3.5.0 requires 'ZODB3>=3.8.0b1'
299  
-         # This will conflict with the fake ZODB egg.
300  
-         zope.app.catalog = 3.5.2
301  
-         zope.component = 3.5.1
302  
-         plone.app.z3cform=0.4.2
303  
-         plone.recipe.zope2instance = 3.6
304  
-         zope.sendmail = 3.6.0
305  
-         Products.PluggableAuthService = 1.6.2
306  
-         plone.z3cform = 0.5.8
307  
-         five.intid=0.4.2
308  
-         plone.reload = 0.11
309  
-         Products.GenericSetup = 1.5.0
310  
-
311  
-         #collective.dancing pindowns
312  
-         zope.location=3.7.0
313  
-         zope.schema=3.5.1
314  
-         #zope.sendmail=3.5.1
315  
-         #five.intid=0.3.0
316  
-
317  
-         #plone.z3cform pindowns
318  
-         zope.proxy = 3.6.1
319  
-         transaction = 1.1.1
320  
-         zc.queue = 1.2.1
321  
-         zope.copy = 3.5.0
322  
-
323  
-         # Other fixes
324  
-         zope.i18n = 3.8.0
325  
-         z3c.batching = 1.1.0
326  
-
327  
-         #0.9.8> does not support python2.4 anymore
328  
-         cssutils=0.9.7
329  
-
330  
-         #0.6 caused Plone startup to fail, maybe requires newer Plone
331  
-         betahaus.emaillogin=0.5
332  
-
333  
-         #Newest stable release
334  
-         Products.TinyMCE=1.2.7
335  
-
336  
-         #Has fix to imagewidget preview tag http://dev.plone.org/archetypes/changeset/12227
337  
-         #Before this pindown 1.5.15 was used
338  
-         Products.Archetypes=1.5.16
339  
-
340  
-
341  
-         #2.1.1 caused problem with missing site.hooks
342  
-         #2.1 causing problems with catalog http://dev.plone.org/ticket/11396
343  
-         archetypes.schemaextender=2.0.3
344  
-
345  
-         #4.x tries to import from plone.app.blob which isn't in Plone 3. Pindown to the current version on the live site
346  
-         Products.SimpleAttachment=3.4
347  
-
348  
-         collective.singing=0.6.14_1
349  
-         simplejson=2.3.3

0 notes on commit 446ad6c

Please sign in to comment.
Something went wrong with that request. Please try again.