291158160d
Not having one logrotate file produced an error during rpmlint. It makes sense to have one logrotate file after Memgraph is installed because it's easier to manage config files. There are two logrotate files in the codebase, one for Community and one for Enterprise edition. Having rotate files per offering also makes sense because offerings are affected less often compared to the features. It's easier to maintain. |
||
---|---|---|
.. | ||
arch-pkg | ||
debian | ||
docker | ||
examples | ||
rpm | ||
CMakeLists.txt | ||
get_version.py | ||
LICENSE_COMMUNITY.md | ||
LICENSE_ENTERPRISE.md | ||
logrotate_community.conf | ||
logrotate_enterprise.conf | ||
memgraph.service | ||
README.md |
Memgraph Release Packaging
Various tools and packaging configuration files should be put under this
directory. Common files for all packages can be kept in the root of this
directory, for example memgraph.service
. If the common stuff should be
grouped, it should be in a subdirectory. examples
directory is one such
case. Packaging specific stuff must have its own directory.
Currently we support distributing Memgraph binary through the following packages.
- Debian package
- RPM package
- Docker image
- ArchLinux package
Release process
While releasing an official version of Memgraph, there are two possible scenarios:
- First release in new major.minor series
- Patch release in existing major.minor series
To release a new major.minor release of Memgraph you should execute the following steps:
- Land all diffs that must be in the new release
- Document all changes in
CHANGELOG.md
and land them - From the
master
branch, create a branch namedrelease/X.Y
and push it toorigin
- Create the release packages triggering a
mg-master-release-branch-test
using branchrelease/X.Y
on Apollo - Enjoy
To release a new patch release in an existing major.minor series you should execute the following steps:
- Checkout to the
release/X.Y
branch - Cherry-pick all landed commits that should be included in the patch version
- Document all changes in
CHANGELOG.md
and commit them - Edit the root
CMakeLists.txt
and setMEMGRAPH_OVERRIDE_VERSION
toX.Y.patch
and commit the change - Create the release packages triggering a
mg-master-release-branch-test
using branchrelease/X.Y
on Apollo - Enjoy