ckan-extension.md 5.67 KB
Newer Older
Patipat Jo's avatar
Patipat Jo committed
1
2
### 1. ckanext-pdfview:
```sh
Patipat Jo's avatar
Patipat Jo committed
3
source /usr/lib/ckan/default/bin/activate
Patipat Jo's avatar
Patipat Jo committed
4

Patipat Jo's avatar
Patipat Jo committed
5
cd /usr/lib/ckan/default
Patipat Jo's avatar
Patipat Jo committed
6

Patipat Jo's avatar
Patipat Jo committed
7
pip install -e 'git+https://gitlab.nectec.or.th/opend/ckanext-pdfview.git#egg=ckanext-pdfview'
Patipat Jo's avatar
Patipat Jo committed
8
9
```
แก้ไขไฟล์ config ของ CKAN ดังนี้:
Patipat Jo's avatar
Patipat Jo committed
10
```sh
Patipat Jo's avatar
Patipat Jo committed
11
sudo vi /etc/ckan/default/ckan.ini
Patipat Jo's avatar
Patipat Jo committed
12
```
Patipat Jo's avatar
Patipat Jo committed
13
```sh
Patipat Jo's avatar
Patipat Jo committed
14
15
16
17
    - ckan.plugins (เติม pdf_view ต่อจากที่มีอยู่แล้ว)
        > ckan.plugins = ... pdf_view
    - ckan.views.default_views (เติม pdf_view ต่อจากที่มีอยู่แล้ว)
        > ckan.views.default_views = ... pdf_view
Patipat Jo's avatar
Patipat Jo committed
18
19
```
```sh
Patipat Jo's avatar
Patipat Jo committed
20
sudo supervisorctl reload
Patipat Jo's avatar
Patipat Jo committed
21
22
23
```
### 2. ckanext-scheming:
```sh
Patipat Jo's avatar
Patipat Jo committed
24
source /usr/lib/ckan/default/bin/activate
Patipat Jo's avatar
Patipat Jo committed
25

Patipat Jo's avatar
Patipat Jo committed
26
cd /usr/lib/ckan/default
Patipat Jo's avatar
Patipat Jo committed
27

Patipat Jo's avatar
Patipat Jo committed
28
pip install -e 'git+https://gitlab.nectec.or.th/opend/ckanext-scheming.git#egg=ckanext-scheming'
Patipat Jo's avatar
Patipat Jo committed
29

Patipat Jo's avatar
Patipat Jo committed
30
pip install -r src/ckanext-scheming/requirements.txt
Patipat Jo's avatar
Patipat Jo committed
31
32
```
แก้ไขไฟล์ config ของ CKAN ดังนี้:
Patipat Jo's avatar
Patipat Jo committed
33
34
```sh
sudo vi /etc/ckan/default/ckan.ini
Patipat Jo's avatar
Patipat Jo committed
35
```
Patipat Jo's avatar
Patipat Jo committed
36
```sh
Patipat Jo's avatar
Patipat Jo committed
37
38
    - ckan.plugins (เติม scheming_datasets ต่อจากที่มีอยู่แล้ว)
        > ckan.plugins = ... scheming_datasets
Patipat Jo's avatar
Patipat Jo committed
39
40
```
```sh
Patipat Jo's avatar
Patipat Jo committed
41
sudo supervisorctl reload
Patipat Jo's avatar
Patipat Jo committed
42
43
```

Patipat Jo's avatar
Patipat Jo committed
44
### 3. ckanext-hierarchy:
Patipat Jo's avatar
Patipat Jo committed
45
```sh
Patipat Jo's avatar
Patipat Jo committed
46
source /usr/lib/ckan/default/bin/activate
Patipat Jo's avatar
Patipat Jo committed
47

Patipat Jo's avatar
Patipat Jo committed
48
cd /usr/lib/ckan/default
Patipat Jo's avatar
Patipat Jo committed
49

Patipat Jo's avatar
Patipat Jo committed
50
pip install -e 'git+https://gitlab.nectec.or.th/opend/ckanext-hierarchy.git#egg=ckanext-hierarchy'
Patipat Jo's avatar
Patipat Jo committed
51

Patipat Jo's avatar
Patipat Jo committed
52
pip install -r src/ckanext-hierarchy/requirements.txt
Patipat Jo's avatar
Patipat Jo committed
53
54
```
แก้ไขไฟล์ config ของ CKAN ดังนี้:
Patipat Jo's avatar
Patipat Jo committed
55
56
```sh
sudo vi /etc/ckan/default/ckan.ini
Patipat Jo's avatar
Patipat Jo committed
57
```
Patipat Jo's avatar
Patipat Jo committed
58
```sh
Patipat Jo's avatar
Patipat Jo committed
59
60
    - ckan.plugins (เติม hierarchy_display hierarchy_form ต่อจากที่มีอยู่แล้ว)
        > ckan.plugins = ... hierarchy_display hierarchy_form
Patipat Jo's avatar
Patipat Jo committed
61
62
```
```sh
Patipat Jo's avatar
Patipat Jo committed
63
sudo supervisorctl reload
Patipat Jo's avatar
Patipat Jo committed
64
```
Patipat Jo's avatar
Patipat Jo committed
65
### 4. ckanext-dcat:
Patipat Jo's avatar
Patipat Jo committed
66
```sh
Patipat Jo's avatar
Patipat Jo committed
67
source /usr/lib/ckan/default/bin/activate
Patipat Jo's avatar
Patipat Jo committed
68

Patipat Jo's avatar
Patipat Jo committed
69
cd /usr/lib/ckan/default
Patipat Jo's avatar
Patipat Jo committed
70

Patipat Jo's avatar
Patipat Jo committed
71
pip install -e 'git+https://github.com/ckan/ckanext-dcat.git#egg=ckanext-dcat'
Patipat Jo's avatar
Patipat Jo committed
72

Patipat Jo's avatar
Patipat Jo committed
73
pip install -r src/ckanext-dcat/requirements.txt
Patipat Jo's avatar
Patipat Jo committed
74
75
```
แก้ไขไฟล์ config ของ CKAN ดังนี้:
Patipat Jo's avatar
Patipat Jo committed
76
77
```sh
sudo vi /etc/ckan/default/ckan.ini
Patipat Jo's avatar
Patipat Jo committed
78
```
Patipat Jo's avatar
Patipat Jo committed
79
```sh
Patipat Jo's avatar
Patipat Jo committed
80
81
    - ckan.plugins (เติม dcat dcat_json_interface structured_data ต่อจากที่มีอยู่แล้ว)
        > ckan.plugins = ... dcat dcat_json_interface structured_data
Patipat Jo's avatar
Patipat Jo committed
82
83
```
```sh
Patipat Jo's avatar
Patipat Jo committed
84
sudo supervisorctl reload
Patipat Jo's avatar
Patipat Jo committed
85
```
Patipat Jo's avatar
Patipat Jo committed
86
### 5. ckanext-thai_gdc:
Patipat Jo's avatar
Patipat Jo committed
87
```sh
Patipat Jo's avatar
Patipat Jo committed
88
source /usr/lib/ckan/default/bin/activate
Patipat Jo's avatar
Patipat Jo committed
89

Patipat Jo's avatar
Patipat Jo committed
90
cd /usr/lib/ckan/default
Patipat Jo's avatar
Patipat Jo committed
91

Patipat Jo's avatar
Patipat Jo committed
92
pip install -e 'git+https://gitlab.nectec.or.th/opend/ckanext-thai_gdc.git#egg=ckanext-thai_gdc'
Patipat Jo's avatar
Patipat Jo committed
93

Patipat Jo's avatar
Patipat Jo committed
94
pip install -r src/ckanext-thai-gdc/requirements.txt
Patipat Jo's avatar
Patipat Jo committed
95
96
```
แก้ไขไฟล์ config ของ CKAN ดังนี้:
Patipat Jo's avatar
Patipat Jo committed
97
98
```sh
sudo vi /etc/ckan/default/ckan.ini
Patipat Jo's avatar
Patipat Jo committed
99
```
Patipat Jo's avatar
Patipat Jo committed
100
```sh
Patipat Jo's avatar
Patipat Jo committed
101
102
    - เพิ่ม config ถัดจากบรรทัด [app:main]
        > scheming.dataset_schemas = ckanext.thai_gdc:ckan_dataset.json
Patipat Jo's avatar
Patipat Jo committed
103
104
    - ckan.plugins (เติม thai_gdc ไว้ก่อน scheming_datasets hierarchy_display hierarchy_form)
        > ckan.plugins = ... thai_gdc scheming_datasets hierarchy_display hierarchy_form
Patipat Jo's avatar
Patipat Jo committed
105
106
```
```sh
Patipat Jo's avatar
Patipat Jo committed
107
108
109
110
sudo supervisorctl reload
```

#### การปรับปรุง extension
Patipat Jo's avatar
Patipat Jo committed
111
112
ก่อนการปรับปรุงควรตรวจสอบการ update ของ extension ckanext-scheming และ ckanext-hierarchy ก่อน

Patipat Jo's avatar
Patipat Jo committed
113
```sh
Patipat Jo's avatar
Patipat Jo committed
114
#ทำการ backup folder extension ก่อน
Patipat Jo's avatar
Patipat Jo committed
115
116
mv /usr/lib/ckan/default/src/ckanext-thai-gdc /usr/lib/ckan/default/src/ckanext-thai-gdc_bak 

Patipat Jo's avatar
Patipat Jo committed
117
#ติดตั้งตามขั้นตอนปกติของ extension
Patipat Jo's avatar
Patipat Jo committed
118
119
120
121
122
123
source /usr/lib/ckan/default/bin/activate

cd /usr/lib/ckan/default

pip install -e 'git+https://gitlab.nectec.or.th/opend/ckanext-thai_gdc.git#egg=ckanext-thai_gdc'

Patipat Jo's avatar
Patipat Jo committed
124
125
pip install -r src/ckanext-thai-gdc/requirements.txt

Patipat Jo's avatar
Patipat Jo committed
126
sudo supervisorctl reload
Patipat Jo's avatar
Patipat Jo committed
127
```
Patipat Jo's avatar
Patipat Jo committed
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
### 6. ckanext-xloader:
```sh
source /usr/lib/ckan/default/bin/activate

cd /usr/lib/ckan/default

pip install -e 'git+https://gitlab.nectec.or.th/opend/ckanext-xloader.git#egg=ckanext-xloader'

pip install -r src/ckanext-xloader/requirements.txt

pip install -U requests[security]
```
แก้ไขไฟล์ config ของ CKAN ดังนี้:
```sh
sudo vi /etc/ckan/default/ckan.ini
```
```sh
Patipat Jo's avatar
Patipat Jo committed
145
146
147
    - เพิ่ม config ถัดจากบรรทัด [app:main]
        > ckanext.xloader.just_load_with_messytables = true
        > ckanext.xloader.ssl_verify = false
Patipat Jo's avatar
Patipat Jo committed
148
149
    - ckan.plugins (เปลี่ยนจาก datapusher เป็น xloader)
        > ckan.plugins = ... xloader ...
Patipat Jo's avatar
Patipat Jo committed
150
    - ckanext.xloader.jobs_db.uri (เพิ่ม config นี้ ถัดจาก sqlalchemy.url และให้มีค่าเหมือนกัน)
Patipat Jo's avatar
Patipat Jo committed
151
152
153
154
155
        > ckanext.xloader.jobs_db.uri = postgresql://ckan_default:{password1}@localhost/ckan_default
```
```sh
sudo supervisorctl reload
```
Patipat Jo's avatar
Patipat Jo committed
156
หากต้องการกำหนดให้ xloader submit all อัตโนมัติเข้า DataStore ทุกวัน ให้ set cronjob ดังนี้
Patipat Jo's avatar
Patipat Jo committed
157
158
159
160
161
```sh
crontab -e
```
เพิ่มคำสั่งต่อไปนี้

Patipat Jo's avatar
Patipat Jo committed
162
    @daily /usr/lib/ckan/default/bin/paster --plugin=ckanext-xloader xloader submit all -c /etc/ckan/default/ckan.ini
Patipat Jo's avatar
Patipat Jo committed
163

Patipat Jo's avatar
Patipat Jo committed
164
### 7. ckanext-dga-stats:
Patipat Jo's avatar
Patipat Jo committed
165
166
167
168
169
170
171
172
173
174
175
176
```sh
source /usr/lib/ckan/default/bin/activate

cd /usr/lib/ckan/default

pip install -e 'git+https://gitlab.nectec.or.th/opend/ckanext-dga-stats.git#egg=ckanext-dga-stats'
```
แก้ไขไฟล์ config ของ CKAN ดังนี้:
```sh
sudo vi /etc/ckan/default/ckan.ini
```
```sh
Patipat Jo's avatar
Patipat Jo committed
177
178
    - ckan.plugins (เติม dga_stats ก่อนหน้า thai_gdc)
        > ckan.plugins = ... dga_stats ...
Patipat Jo's avatar
Patipat Jo committed
179
180
181
182
```
```sh
sudo supervisorctl reload
```