author | Aurelien Campeas <aurelien.campeas@logilab.fr> |
Wed, 24 Oct 2012 12:08:21 +0200 | |
branch | stable |
changeset 8582 | b0e086f451b7 |
parent 8467 | ad75430a2dc8 |
child 8700 | 9064df1c2f99 |
permissions | -rw-r--r-- |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
1 |
.. -*- coding: utf-8 -*- |
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
2 |
|
282
fe06f5e828c5
[doc] Add internal links.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
229
diff
changeset
|
3 |
.. _migration: |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
4 |
|
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
5 |
Migration |
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
6 |
========= |
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
7 |
|
2535
c7b736929a58
[doc] a bit of rewriting
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
2479
diff
changeset
|
8 |
One of the main design goals of *CubicWeb* was to support iterative and agile |
c7b736929a58
[doc] a bit of rewriting
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
2479
diff
changeset
|
9 |
development. For this purpose, multiple actions are provided to facilitate the |
c7b736929a58
[doc] a bit of rewriting
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
2479
diff
changeset
|
10 |
improvement of an instance, and in particular to handle the changes to be |
c7b736929a58
[doc] a bit of rewriting
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
2479
diff
changeset
|
11 |
applied to the data model, without loosing existing data. |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
12 |
|
2476
1294a6bdf3bf
application -> instance where it makes sense
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2175
diff
changeset
|
13 |
The current version of a cube (and of cubicweb itself) is provided in the file |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
14 |
`__pkginfo__.py` as a tuple of 3 integers. |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
15 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
16 |
Migration scripts management |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
17 |
---------------------------- |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
18 |
|
1168
ebf7328c251e
improve migration doc
Emile Anclin <emile.anclin@logilab.fr>
parents:
287
diff
changeset
|
19 |
Migration scripts has to be located in the directory `migration` of your |
2476
1294a6bdf3bf
application -> instance where it makes sense
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2175
diff
changeset
|
20 |
cube and named accordingly: |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
21 |
|
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
22 |
:: |
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
23 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
24 |
<version n° X.Y.Z>[_<description>]_<mode>.py |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
25 |
|
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
26 |
in which : |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
27 |
|
1168
ebf7328c251e
improve migration doc
Emile Anclin <emile.anclin@logilab.fr>
parents:
287
diff
changeset
|
28 |
* X.Y.Z is the model version number to which the script enables to migrate. |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
29 |
|
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
30 |
* *mode* (between the last "_" and the extension ".py") is used for |
1168
ebf7328c251e
improve migration doc
Emile Anclin <emile.anclin@logilab.fr>
parents:
287
diff
changeset
|
31 |
distributed installation. It indicates to which part |
ebf7328c251e
improve migration doc
Emile Anclin <emile.anclin@logilab.fr>
parents:
287
diff
changeset
|
32 |
of the application (RQL server, web server) the script applies. |
ebf7328c251e
improve migration doc
Emile Anclin <emile.anclin@logilab.fr>
parents:
287
diff
changeset
|
33 |
Its value could be : |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
34 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
35 |
* `common`, applies to the RQL server as well as the web server and updates |
229
767ff7f5d5a7
[doc] Replace all : s/by example/for example/
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
197
diff
changeset
|
36 |
files on the hard drive (configuration files migration for example). |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
37 |
|
1168
ebf7328c251e
improve migration doc
Emile Anclin <emile.anclin@logilab.fr>
parents:
287
diff
changeset
|
38 |
* `web`, applies only to the web server and updates files on the hard drive. |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
39 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
40 |
* `repository`, applies only to the RQL server and updates files on the |
1168
ebf7328c251e
improve migration doc
Emile Anclin <emile.anclin@logilab.fr>
parents:
287
diff
changeset
|
41 |
hard drive. |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
42 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
43 |
* `Any`, applies only to the RQL server and updates data in the database |
1168
ebf7328c251e
improve migration doc
Emile Anclin <emile.anclin@logilab.fr>
parents:
287
diff
changeset
|
44 |
(schema and data migration for example). |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
45 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
46 |
Again in the directory `migration`, the file `depends.map` allows to indicate |
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
47 |
that for the migration to a particular model version, you always have to first |
2175
16d3c37c5d28
[doc] improvements
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
2172
diff
changeset
|
48 |
migrate to a particular *CubicWeb* version. This file can contain comments (lines |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
49 |
starting by `#`) and a dependancy is listed as follows: :: |
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
50 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
51 |
<model version n° X.Y.Z> : <cubicweb version n° X.Y.Z> |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
52 |
|
229
767ff7f5d5a7
[doc] Replace all : s/by example/for example/
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
197
diff
changeset
|
53 |
For example: :: |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
54 |
|
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
55 |
0.12.0: 2.26.0 |
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
56 |
0.13.0: 2.27.0 |
1168
ebf7328c251e
improve migration doc
Emile Anclin <emile.anclin@logilab.fr>
parents:
287
diff
changeset
|
57 |
# 0.14 works with 2.27 <= cubicweb <= 2.28 at least |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
58 |
0.15.0: 2.28.0 |
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
59 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
60 |
Base context |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
61 |
------------ |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
62 |
|
1195 | 63 |
The following identifiers are pre-defined in migration scripts: |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
64 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
65 |
* `config`, instance configuration |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
66 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
67 |
* `interactive_mode`, boolean indicating that the script is executed in |
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
68 |
an interactive mode or not |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
69 |
|
2479
1c697cc6dd31
fix versions_map doc
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2476
diff
changeset
|
70 |
* `versions_map`, dictionary of migrated versions (key are cubes |
1c697cc6dd31
fix versions_map doc
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2476
diff
changeset
|
71 |
names, including 'cubicweb', values are (from version, to version) |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
72 |
|
1195 | 73 |
* `confirm(question)`, function asking the user and returning true |
1168
ebf7328c251e
improve migration doc
Emile Anclin <emile.anclin@logilab.fr>
parents:
287
diff
changeset
|
74 |
if the user answers yes, false otherwise (always returns true in |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
75 |
non-interactive mode) |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
76 |
|
5231
40f53867e332
[doc/book] misc fixes/enhancements & notes
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
5150
diff
changeset
|
77 |
* `_()` is equivalent to `unicode` allowing to flag the strings to |
40f53867e332
[doc/book] misc fixes/enhancements & notes
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
5150
diff
changeset
|
78 |
internationalize in the migration scripts. |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
79 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
80 |
In the `repository` scripts, the following identifiers are also defined: |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
81 |
|
5231
40f53867e332
[doc/book] misc fixes/enhancements & notes
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
5150
diff
changeset
|
82 |
* `commit(ask_confirm=True)`, request confirming and executing a "commit" |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
83 |
|
2476
1294a6bdf3bf
application -> instance where it makes sense
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2175
diff
changeset
|
84 |
* `schema`, instance schema (readen from the database) |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
85 |
|
2476
1294a6bdf3bf
application -> instance where it makes sense
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2175
diff
changeset
|
86 |
* `fsschema`, installed schema on the file system (e.g. schema of |
1168
ebf7328c251e
improve migration doc
Emile Anclin <emile.anclin@logilab.fr>
parents:
287
diff
changeset
|
87 |
the updated model and cubicweb) |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
88 |
|
2476
1294a6bdf3bf
application -> instance where it makes sense
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2175
diff
changeset
|
89 |
* `repo`, repository object |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
90 |
|
2476
1294a6bdf3bf
application -> instance where it makes sense
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2175
diff
changeset
|
91 |
* `session`, repository session object |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
92 |
|
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
93 |
|
6244
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
94 |
New cube dependencies |
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
95 |
--------------------- |
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
96 |
|
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
97 |
If your code depends on some new cubes, you have to add them in a migration |
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
98 |
script by using: |
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
99 |
|
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
100 |
* `add_cube(cube, update_database=True)`, add a cube. |
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
101 |
* `add_cubes(cubes, update_database=True)`, add a list of cubes. |
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
102 |
|
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
103 |
The `update_database` parameter is telling if the database schema |
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
104 |
should be updated or if only the relevant persistent property should be |
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
105 |
inserted (for the case where a new cube has been extracted from an |
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
106 |
existing one, so the new cube schema is actually already in there). |
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
107 |
|
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
108 |
If some of the added cubes are already used by an instance, they'll simply be |
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
109 |
silently skipped. |
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
110 |
|
1c4ac1626f3c
[book - #1251197] add a section in migration page for add_cube and add_cubes command
Stephanie Marcu <stephanie.marcu@logilab.fr>
parents:
6059
diff
changeset
|
111 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
112 |
Schema migration |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
113 |
---------------- |
1195 | 114 |
The following functions for schema migration are available in `repository` |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
115 |
scripts: |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
116 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
117 |
* `add_attribute(etype, attrname, attrtype=None, commit=True)`, adds a new |
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
118 |
attribute to an existing entity type. If the attribute type is not specified, |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
119 |
then it is extracted from the updated schema. |
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
120 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
121 |
* `drop_attribute(etype, attrname, commit=True)`, removes an attribute from an |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
122 |
existing entity type. |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
123 |
|
1168
ebf7328c251e
improve migration doc
Emile Anclin <emile.anclin@logilab.fr>
parents:
287
diff
changeset
|
124 |
* `rename_attribute(etype, oldname, newname, commit=True)`, renames an attribute |
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
125 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
126 |
* `add_entity_type(etype, auto=True, commit=True)`, adds a new entity type. |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
127 |
If `auto` is True, all the relations using this entity type and having a known |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
128 |
entity type on the other hand will automatically be added. |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
129 |
|
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
130 |
* `drop_entity_type(etype, commit=True)`, removes an entity type and all the |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
131 |
relations using it. |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
132 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
133 |
* `rename_entity_type(oldname, newname, commit=True)`, renames an entity type |
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
134 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
135 |
* `add_relation_type(rtype, addrdef=True, commit=True)`, adds a new relation |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
136 |
type. If `addrdef` is True, all the relations definitions of this type will |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
137 |
be added. |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
138 |
|
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
139 |
* `drop_relation_type(rtype, commit=True)`, removes a relation type and all the |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
140 |
definitions of this type. |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
141 |
|
8467
ad75430a2dc8
[migraction] rename rename_relation method to rename_relation_type for consistency
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
6244
diff
changeset
|
142 |
* `rename_relationi_type(oldname, newname, commit=True)`, renames a relation type. |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
143 |
|
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
144 |
* `add_relation_definition(subjtype, rtype, objtype, commit=True)`, adds a new |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
145 |
relation definition. |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
146 |
|
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
147 |
* `drop_relation_definition(subjtype, rtype, objtype, commit=True)`, removes |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
148 |
a relation definition. |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
149 |
|
2544
282261b26774
[doc] fixed some dangling internal links
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
2535
diff
changeset
|
150 |
* `sync_schema_props_perms(ertype=None, syncperms=True, syncprops=True, syncrdefs=True, commit=True)`, |
2476
1294a6bdf3bf
application -> instance where it makes sense
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2175
diff
changeset
|
151 |
synchronizes properties and/or permissions on: |
2544
282261b26774
[doc] fixed some dangling internal links
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
2535
diff
changeset
|
152 |
- the whole schema if ertype is None |
282261b26774
[doc] fixed some dangling internal links
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
2535
diff
changeset
|
153 |
- an entity or relation type schema if ertype is a string |
282261b26774
[doc] fixed some dangling internal links
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
2535
diff
changeset
|
154 |
- a relation definition if ertype is a 3-uple (subject, relation, object) |
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
155 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
156 |
* `change_relation_props(subjtype, rtype, objtype, commit=True, **kwargs)`, changes |
1195 | 157 |
properties of a relation definition by using the named parameters of the properties |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
158 |
to change. |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
159 |
|
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
160 |
* `set_widget(etype, rtype, widget, commit=True)`, changes the widget used for the |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
161 |
relation <rtype> of entity type <etype>. |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
162 |
|
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
163 |
* `set_size_constraint(etype, rtype, size, commit=True)`, changes the size constraints |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
164 |
for the relation <rtype> of entity type <etype>. |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
165 |
|
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
166 |
Data migration |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
167 |
-------------- |
1195 | 168 |
The following functions for data migration are available in `repository` scripts: |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
169 |
|
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
170 |
* `rql(rql, kwargs=None, cachekey=None, ask_confirm=True)`, executes an arbitrary RQL |
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
171 |
query, either to interrogate or update. A result set object is returned. |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
172 |
|
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
173 |
* `add_entity(etype, *args, **kwargs)`, adds a nes entity type of the given |
1195 | 174 |
type. The attribute and relation values are specified using the named and |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
175 |
positionned parameters. |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
176 |
|
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
177 |
Workflow creation |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
178 |
----------------- |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
179 |
|
1195 | 180 |
The following functions for workflow creation are available in `repository` |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
181 |
scripts: |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
182 |
|
4447
a55fb2745644
add_state/add_transition are now deprecated, only add_workflow remaining
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4442
diff
changeset
|
183 |
* `add_workflow(label, workflowof, initial=False, commit=False, **kwargs)`, adds a new workflow |
a55fb2745644
add_state/add_transition are now deprecated, only add_workflow remaining
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4442
diff
changeset
|
184 |
for a given type(s) |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
185 |
|
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
186 |
You can find more details about workflows in the chapter :ref:`Workflow` . |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
187 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
188 |
Configuration migration |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
189 |
----------------------- |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
190 |
|
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
191 |
The following functions for configuration migration are available in all |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
192 |
scripts: |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
193 |
|
1195 | 194 |
* `option_renamed(oldname, newname)`, indicates that an option has been renamed |
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
195 |
|
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
196 |
* `option_group_change(option, oldgroup, newgroup)`, indicates that an option does not |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
197 |
belong anymore to the same group. |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
198 |
|
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
199 |
* `option_added(oldname, newname)`, indicates that an option has been added. |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
200 |
|
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
201 |
* `option_removed(oldname, newname)`, indicates that an option has been deleted. |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
202 |
|
6059
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
203 |
The `config` variable is an object which can be used to access the |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
204 |
configuration values, for reading and updating, with a dictionary-like |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
205 |
syntax. |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
206 |
|
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
207 |
Example 1: migration script changing the variable 'sender-addr' in |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
208 |
all-in-one.conf. The script also checks that in that the instance is |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
209 |
configured with a known value for that variable, and only updates the |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
210 |
value in that case. |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
211 |
|
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
212 |
.. sourcecode:: python |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
213 |
|
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
214 |
wrong_addr = 'cubicweb@loiglab.fr' # known wrong address |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
215 |
fixed_addr = 'cubicweb@logilab.fr' |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
216 |
configured_addr = config.get('sender-addr') |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
217 |
# check that the address has not been hand fixed by a sysadmin |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
218 |
if configured_addr == wrong_addr: |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
219 |
config['sender-addr'] = fixed-addr |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
220 |
config.save() |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
221 |
|
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
222 |
Example 2: checking the value of the database backend driver, which |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
223 |
can be useful in case you need to issue backend-dependent raw SQL |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
224 |
queries in a migration script. |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
225 |
|
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
226 |
.. sourcecode:: python |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
227 |
|
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
228 |
dbdriver = config.sources()['system']['db-driver'] |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
229 |
if dbdriver == "sqlserver2005": |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
230 |
# this is now correctly handled by CW :-) |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
231 |
sql('ALTER TABLE cw_Xxxx ALTER COLUMN cw_name varchar(64) NOT NULL;') |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
232 |
commit() |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
233 |
else: # postgresql |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
234 |
sync_schema_props_perms(ertype=('Xxxx', 'name', 'String'), |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
235 |
syncperms=False) |
47f84adcd676
added tip on config file migration in scripts
Alexandre Fayolle <alexandre.fayolle@logilab.fr>
parents:
5394
diff
changeset
|
236 |
|
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
237 |
|
197
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
238 |
Others migration functions |
1632e01a58a9
[doc] Translation to english.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
127
diff
changeset
|
239 |
-------------------------- |
2172
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
240 |
Those functions are only used for low level operations that could not be |
cf8f9180e63e
delete-trailing-whitespace
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
1714
diff
changeset
|
241 |
accomplished otherwise or to repair damaged databases during interactive |
1195 | 242 |
session. They are available in `repository` scripts: |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
243 |
|
2476
1294a6bdf3bf
application -> instance where it makes sense
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2175
diff
changeset
|
244 |
* `sql(sql, args=None, ask_confirm=True)`, executes an arbitrary SQL query on the system source |
93
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
245 |
* `add_entity_type_table(etype, commit=True)` |
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
246 |
* `add_relation_type_table(rtype, commit=True)` |
9c919a47e140
[doc] total file reorganisation - phase 1 complete
Nicolas Chauvat <nicolas.chauvat@logilab.fr>
parents:
diff
changeset
|
247 |
* `uninline_relation(rtype, commit=True)` |
1440
4fc48f2a1748
[doc] Typos and minor changes.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
1195
diff
changeset
|
248 |
|
4fc48f2a1748
[doc] Typos and minor changes.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
1195
diff
changeset
|
249 |
|
4fc48f2a1748
[doc] Typos and minor changes.
Sandrine Ribeau <sandrine.ribeau@logilab.fr>
parents:
1195
diff
changeset
|
250 |
[FIXME] Add explanation on how to use cubicweb-ctl shell |