This repository has been archived by the owner on Dec 6, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 12
/
INSTALL
103 lines (72 loc) · 3.98 KB
/
INSTALL
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
eZ Content Staging Extension
============================
Requirements
------------
Source server:
. eZ Publish 4.5 or later (note that patches have to be applied for versions 4.5 and 4.6)
. ggWebservices 0.11 or later
. ezjscore (if using ezwt)
Target server:
. eZ Publish 4.5 or later
. ezprestapiprovider extension (for rest controller classes)
NB: the extension shall be installed on both servers.
Be sure to read the files doc/known_bugs.txt and doc/specs.txt for a list of current limitations: this extension does
not interact well with all editorial workflows and eZ Publish installations, nor does it support
all synchronization usecases.
Installation
------------
Target server:
1. unzip the extension, enable it (make sure to regenerate autoloads)
2. enable rewrite rules to make the rest api accessible
3. disable oauth authentication (use basic auth with or without https):
edit rest.ini.append.php:
[Authentication]
AuthenticationStyle=ezpRestBasicAuthStyle
4. make sure there is a user account that has enough rights to create/read/update/delete any content, e.g. admin
Source server:
1. unzip the extension, enable it (make sure to regenerate autoloads)
2. create the new db table(s): either go to "setup/Upgrade check/DB Upgrade check" in the admin interface, or use sql script in the sql/ folder
3. copy the files from the patches directory over the original eZ Publish kernel files (back up originals first)
Note: for eZP Community Project versions, use the "4.6" patches up to versions 2012.1, no patches from 2012.2 onward
4. enable all the needed workflow events:
- create one workflow per trigger for all content-related triggers:
- add to each workflow one event of type "stage <xxx>"
- add each workflow to one trigger
. add location: after
. remove location: before
. ...
Note that for every one of the 15 operations relating to content, 2 triggers are available: Before and After.
You do not need to create 30 workflows, only 15 - each worflow will be usable with the correct trigger type
(either Before or After).
- if you have existing workflows (eg. content approval), put the "stage" event where you deem appropriate (eg. after approval and wait-until-date events)
5. define target feed:
. make sure all content classes, sections, languages, object states, are defined the same on source and target server
(this has to be done by hand)
. edit contentstagingsource.ini.append.php:
[GeneralSettings]
TargetList[]=<feedname>
[Target_<feedname>]
Name=<A descriptive name for this export feed>
TransportClass=eZRestApiGGWSClientStagingTransport
RemoteIdGeneratorClass=eZContentStagingSameRemoteIdGenerator
Server=<server_feedname> note: this can be the same or different from feedname, but has to be the same as used in wsproviders.ini
Subtrees[]=<local_root_node_id>
RemoteSubtrees[]=<target_root_node_id>
make sure that for all root nodes of the feed in the source server, a corresponding root node exists on the target server
. edit wsproviders.ini.append.php
[<server_feedname>]
providerType=REST
providerUri=<url to rest api on target server, including the final part, eg: http://my.server.com/api/contentstaging/v1>
Options[]
Options[authType]=1 (for basic auth)
Options[login]=<username>
Options[password]=<password>
6. in the Administration interface, go to the "Setup" tab, click on the "Content staging" link in the left-col menu.
You should see the target feed listed. Click on the "check" link to verify that it is properly set up.
Click on "init feed" button and sync the generated event
7. for monitoring the number/age of events pending synchronization, integration with the eZSNMPd extension is provided.
Please use eZSNMPd version 0.5 or later for it to work.
Troubleshooting
---------------
. for configuration/connectivity problems, the "check feed" link in the Admin interface page listing feeds is your friend
. for anything else, see the FAQ and known_bugs files