|
|
Mads Kiilerich
|
20e850093f1c
|
5 years ago
|
|
hooks: on Git, invoke hooks/post-receive-custom from hooks/post-receive
Make it possible for admins to install all kinds of hooks.
Based on a patch by Tim Ooms.
A more generic solution would be nice, but for now we aim for this minimal solution.
|
|
|
Mads Kiilerich
|
d8e65780dbe9
|
5 years ago
|
|
hooks: clarify in UI and documentation how the hook control essentially is Mercurial only
The Git hook model doesn't directly allow multiple hooks of the same kind.
|
|
|
Mads Kiilerich
|
92894fccc615
|
5 years ago
|
|
repo-scan: recommend running this to reinstall Git hooks after upgrading
It would be too invasive to fully automate this.
|
|
|
Thomas De Schampheleire
|
e3d8f4bc3ce7
|
5 years ago
|
|
extensions: rename 'rcextensions' into 'extensions' but provide compatibility
The 'rc' prefix is legacy. Rename 'rcextensions' into 'extensions', updating all references. Compatibility with the old name will be retained for a while, and removed in a later release. Migrating is as simple as renaming a file.
|
|
|
Mads Kiilerich
|
b688a2a1b189
|
5 years ago
|
|
|
|
|
Mads Kiilerich
|
89e9aef9b983
|
6 years ago
|
|
|
|
|
Thomas De Schampheleire
|
de92f48c1375
|
7 years ago
|
|
docs: suggest creating a new virtual environment for major upgrades
While not strictly necessary, it may be interesting to start from a new virtualenv rather than upgrading inside the old one. This will remove old packages once installed manually but no longer necessary. At the same time, it makes a rollback of the upgrade process more easy.
Update the upgrade instructions to this effect.
|
|
|
Thomas De Schampheleire
|
874ed3e58579
|
7 years ago
|
|
|
|
|
Thomas De Schampheleire
|
b3644eeee445
|
7 years ago
|
|
docs: upgrade: recreating git hooks can only be done after starting Kallithea
The upgrade instructions lets the user click on UI links while Kallithea is not yet started. Move those instructions down to fix the flow.
|
|
|
Thomas De Schampheleire
|
a2abde4062ec
|
7 years ago
|
|
docs: upgrade: front-end should be built for all installation methods
... and not exclusively when installing from version control.
|
|
|
Thomas De Schampheleire
|
634c2fa427e8
|
7 years ago
|
|
docs: upgrade: make upgrade instructions from version control more explicit
Instruct users to make a note of the orginal and new revision, both to help in any failure analysis, and also to let them realize when the 'hg update' command failed.
|
|
|
Thomas De Schampheleire
|
14e8dcffd279
|
7 years ago
|
|
docs: upgrade: clarify database upgrade instructions
Alembic should be called with the new configuration file, which the instructions already created as 'new.ini'.
|
|
|
Thomas De Schampheleire
|
b66725ba01ed
|
7 years ago
|
|
cli: add command 'kallithea-cli front-end-build'
Kallithea is under the GPL license, and we can thus only distribute any generated code if we also ship the corresponding source.
We are moving towards a web front-end that use npm to download and compile various open source components. The components might not be GPL, but if we distribute any parts of their code (compiled or converted to other representation), then we also must distribute the corresponding source under the GPL.
It doesn't seem feasible for us to distribute the source of everything that npm downloads and includes when we are building. It thus also doesn't seem feasible for us to build and ship the compiled (possibly minified) front-end code. Instead, we have to make it as smooth as possible for our users to get up and running.
It doesn't seem feasible for us to ship or install npm. We must assume it is available. That requirement must be documented clearly, and we must recommend how to install npm for the most common platforms.
We could perhaps just document what manual steps to run. Kallithea doesn't work out of the box anyway - it has to be configured and initialized. Extra steps might not be a big problem.
Another approach is to call out to npm while pip is installing Kallithea and download the requirements and build the files. It can be done by customizing setuptools commands in setup.py. But: Python packaging is fragile. Even though we only support pip, it really isn't built for things like this. Custom output is muted and buffered and only shown if running with -v or the command fails. And pip and setup.py can be used to build and install in so many ways that we probably can't make it work reliably with all ways of installing Kallithea.
The approach implemented by this commit is to add a custom cli command 'front-end-build' to run the required commands. This single user-facing command can internally run various steps as needed. The only current requirement is the presence of npm and an internet connection.
For now, this will just create/update style.css ... but currently probably without any actual changes. The files created by npm (and the node_modules directory) must *not* be a part of the release package made with 'setup.py sdist'.
(Commit message is mostly written by Mads Kiilerich)
|
|
|
Thomas De Schampheleire
|
7784a1212471
|
7 years ago
|
|
cli: convert 'gearbox make-config' into 'kallithea-cli config-create'
... and update documentation.
|
|
|
Thomas De Schampheleire
|
415cc651bd83
|
7 years ago
|
|
docs: upgrade: add section on updating git hooks Commit 39bdf0ab2862 has changed the Git hooks. When upgrading Kallithea to this commit, but not explicitly reinstalling the Git hooks, pushing to Git repos will fail. Add a section to the documentation to explain that a reinstall of the hooks may be needed, and how to do it.
|
|
|
domruf
|
1969f7dfb6b0
|
8 years ago
|
|
move package.json to root directory
In the future we'll probably use it to manage more then just less/css stuff. So the less directory is the wrong place. The most common place is the root directory, so lets put it there. Also, this way the --prefix parameter for npm is no longer required.
|
|
|
domruf
|
6ef837acb0d2
|
8 years ago
|
|
less: don't distribute the generated style.css file - for now, it must be built with npm after installing Kallithea
Generated files should not be included in the repository. Especially not when using GPL with the requirement of distributing corresponding source.
Also add the two commands to generate the css file to the docs.
Modified by Mads Kiilerich.
|
|
|
Thomas De Schampheleire
|
29e9cb56f26f
|
8 years ago
|
|
docs: recommend --upgrade for all pip installations in a virtualenv
As suggested by Mads Kiilerich.
Don't recommend this practice when no virtualenv is used, i.e. root installation or --user installation: in this case upgrading existing packages may be too disruptive. The user can still add it manually if he so chooses.
|
|
|
Mads Kiilerich
|
213085032127
|
9 years ago
|
|
gearbox: make a make-config sub-command available again
Drop the old kallithea-config command line tool and rework it to a replacement for the make-config paster command. Make-config was experimental in paste, it doesn't exist with gearbox, it was tied to pylons, and we already have the luxury problem of having two ways of doing almost the same thing. This is a good opportunity to get rid of one of them.
This replacement tool is Kallithea specific and doesn't need to be told that it is Kallithea it has to create a config file for. The command should thus perhaps be given a Kallithea specific name instead of the very generic name ...
|
|
|
Mads Kiilerich
|
2c3d30095d5e
|
9 years ago
|
|
gearbox: replace paster with something TurboGears2-ish that still works with the Pylons stack
This is a step towards moving away from the Pylons stack to TurboGears2, but still independent of it.
Some notes from the porting - it could perhaps be the missing(?) documentation for migrating from paster to gearbox:
Note: 'gearbox' without parameters will crash - specify '-h' to get started testing.
Replace paster summary = 'yada yada' with the first line of the docstring of the Command class ... or override get_description.
Note: All newlines in the docstring will be collapsed and mangle the long help text.
Grouping of commands is not possible. Standard commands (for development) can't be customized under the same name or hidden. (Like for paster, the conceptual model also assumes that the sub-command naming is namespaced so commands from other packages won't conflict.)
The usage help is fully automated from the declared options.
For all deprecated Commands, replace paster hidden = True with gearbox deprecated = True
Note: config_file, takes_config_file, min_args and max_args are not available / relevant.
The gearbox parser is customized by overriding get_parser - there is nothing like paster update_parser.
Gearbox is using argparse instead of optparse ... but argparse add_argument is mostly backwards compatible with optparse add_option.
Instead of overriding command or run as in paster, override take_action in gearbox. The parsed arguments are passed to take_action, not available on the command instance.
Paster BadCommand is not available and must be handled manually, terminating with sys.exit(1).
There is no standard make-config command in gearbox.
Paster appinstall has been replaced by the somewhat different setup_app module in gearbox. There is still no clean way to pass parameters to SetupAppCommand and it relies on websetup and other apparently unnecessary complexity. Instead, implement setup-db from scratch.
Minor change by Thomas De Schampheleire: add gearbox logging configuration. Because we use logging.config.fileConfig(.inifile) during gearbox command execution, the logging settings need to be correct and contain a block for gearbox logging itself. Otherwise, errors in command processing are not even visible and the command exits silently.
|
|
|
Thomas De Schampheleire
|
f973b866fffc
|
9 years ago
|
|
Turbogears2 migration: use sqlalchemy.url iso sqlalchemy.db1.url
In Turbogears2, much of the application initialization is handled by the framework, whereas in Pylons the application was responsible for it. Initializing SQLAlchemy is one such part of initialization which is handled by Turbogears2.
Turbogears2 expects the configuration file to refer to the database using 'sqlalchemy.url' rather than the current 'sqlalchemy.db1.url'. While the exact name is not really important, not following this approach means we'll need to override the sqlalchemy initialization method.
Therefore, as a preparation to the Turbogears2 migration, already change the database reference string under Pylons. When upgrading to a version of Kallithea containing this commit, the .ini file will manually need to be adapted to remove the .db1 strings.
|
|
|
Søren Løvborg
|
9fd64dd2617d
|
9 years ago
|
|
|
|
|
Søren Løvborg
|
c7ef77ab2f95
|
9 years ago
|
|
db: remove SQLAlchemy Migrate support
The DbMigrateVersion table will be removed in a later changeset.
|
|
|
Søren Løvborg
|
0b6d2ca7175f
|
9 years ago
|
|
db: drop RhodeCode compatibility (database rebranding etc.)
To migrate from RhodeCode, users will have to first migrate to Kallithea 0.3.2.
|
|
|
Søren Løvborg
|
8075ec3d0233
|
9 years ago
|
|
docs: restructure Kallithea upgrade instructions
This creates a separate "Upgrading Kallithea" section, instead of trying (and failing) to repeat the same information for each installation page. Trying to maintain upgrade instructions for each installation method was perhaps overly ambitious. In practice, only the Linux instructions were up-to-date.
(Incidentally, this is kind of a throwback to Kallithea 0.1, which also had a separate upgrade section.)
|
|
|
Bradley M. Kuhn
|
e73a69cb98dc
|
11 years ago
|
|
|
|
|
Bradley M. Kuhn
|
99ad9d0af1a3
|
11 years ago
|
|
|
|
|
Marcin Kuzminski
|
3563bb7b4b82
|
13 years ago
|
|
|
|
|
Marcin Kuzminski
|
1a498b11f154
|
13 years ago
|
|
|
|
|
Marcin Kuzminski
|
2d4e1f5e854e
|
13 years ago
|
|
|
|
|
Marcin Kuzminski
|
8b8edfc25856
|
13 years ago
|
|
|
|
|
Marcin Kuzminski
|
f7a52d548fd0
|
13 years ago
|
|
|
|
|
H Waldo G
|
008d9c6f7c92
|
13 years ago
|
|
|
|
|
Marcin Kuzminski
|
dc2584ba5fbc
|
14 years ago
|
|
|
|
|
Marcin Kuzminski
|
8dfb265fc954
|
14 years ago
|
|
|
|
|
Marcin Kuzminski
|
934906f028b5
|
14 years ago
|
|
|
|
|
Marcin Kuzminski
|
17c9393e9645
|
14 years ago
|
|
|
|
|
Marcin Kuzminski
|
6fdc3b25bc7c
|
14 years ago
|
|
|
|
|
Marcin Kuzminski
|
6c6718c06ea2
|
14 years ago
|
|
|
|
|
Marcin Kuzminski
|
8330d5778ba3
|
14 years ago
|
|
|
|
|
Marcin Kuzminski
|
bf263968da47
|
14 years ago
|
|
|
|
|
Marcin Kuzminski
|
93b980ebee55
|
15 years ago
|
|
|
|
|
Marcin Kuzminski
|
9472a0150bf0
|
15 years ago
|
|
|
|
|
Marcin Kuzminski
|
3cdacd152b24
|
15 years ago
|
|
|
|
|
Marcin Kuzminski
|
8af52e1224ff
|
15 years ago
|
|
|
|
|
jfh
|
e67786cb2afa
|
15 years ago
|
|
|
|
|
Marcin Kuzminski
|
bdc438fb4fe4
|
15 years ago
|
|
Fixes for release 1.1.4 Docs updates
|
|
|
Marcin Kuzminski
|
053983a464e4
|
15 years ago
|
|
|
|
|
Marcin Kuzminski
|
a040597b070b
|
15 years ago
|
|
|
|
|
Marcin Kuzminski
|
673de12e6bf6
|
15 years ago
|
|
added option to enable/disable of logger hooks from admin panel. some docs/setup updates
|
|
|
Marcin Kuzminski
|
afd98d1f817e
|
15 years ago
|
|
|