- Jun 16, 2022
-
-
Pavel Balaev authored
Regular expression now works on versions: alpha, beta, rc and so on. NO_DOC=bugfix NO_TEST=bugfix NO_CHANGELOG=bugfix
-
Pavel Balaev authored
Tabs were replaced with spaces to bypass checkpatch. NO_DOC=bugfix NO_TEST=bugfix NO_CHANGELOG=bugfix
-
- Mar 10, 2022
-
-
Vladimir Davydov authored
See https://github.com/tarantool/checkpatch NO_DOC=ci NO_TEST=ci NO_CHANGELOG=ci
-
- Feb 15, 2022
-
-
Vladimir Davydov authored
1. There's a non-ASCII character in a comment (’). Replase it with a plain comma ('). Fixes commit 19be79e6 ("tools: gen-release-notes: adapt for enterprise"). 2. In Python 2 subprocess.Popen() doesn't support the 'with' clause. Do not use the 'with' clause. Fixes commit 5715f194 ("tools: gen-release-notes: factor out popen helper") As a result CI fails. I wonder why it passed on the PR... Follow-up #6855 NO_DOC=tools NO_CHANGELOG=tools
-
Vladimir Davydov authored
We're going to reuse the existing tools/gen-release-notes script for generation of Enterprise Edition (EE) changelogs. To do that, we need to 1. Add 'enterprise' to the head of the sections list. The new section will be used by EE changelog entries. We want them to go before open-source changelog entries. 2. Gather changelog entries from the 'changelog/unreleased' directory of the superproject directory. EE uses the open-source repository as its submodule. NO_DOC=tools NO_CHANGELOG=tools
-
Vladimir Davydov authored
So that we can gather changelog entries from more than one directory. NO_DOC=tools NO_CHANGELOG=tools
-
Vladimir Davydov authored
We will use it for running other commands. NO_DOC=tools NO_CHANGELOG=tools
-
Vladimir Davydov authored
Trivial refactoring that replaces source_dir and entries_dir_relative changelog_entries_sorted() arguments with entries_dir. Needed to make the following work easier. NO_DOC=tools NO_CHANGELOG=tools
-
- Jan 28, 2022
-
-
Vladimir Davydov authored
This commit adds a new script, tools/check-commits. The script takes git revisions in the same format as git-rev-list (actually, it feeds all its arguments to git-rev-list) and runs some checks on each of the commits. For example, to check the head commit, run: ./tools/check-commits -1 HEAD To check the last five commits, run: ./tools/check-commits HEAD~5..HEAD Currently, there are only two checks, but in future we may add more checks, e.g. check diffs for trailing spaces: - The commit message contains a documentation request. Can be suppressed with NO_DOC=<reason> in the commit message. - A new changelog entry is added to changelog/unreleased by the commit. Can be suppressed with NO_CHANGELOG=<reason> in the commit message. This commit also adds a new workflow triggered on pull request, lint/commits. The workflow runs the tools/check-commits script on all the commits added by the pull request. The workflow doesn't run on push, because it's problematic to figure out what commits are new on a branch. Besides, we don't want to run it on push to release branches, because it's a pure dev workflow. Example output: Checking commit a33f3cc7 PASS Checking commit 6f29f9d7 FAIL SHA: 6f29f9d7 SUBJECT: iproto: introduce graceful shutdown protocol ERROR: Changelog not found in changelog/unreleased. If this commit doesn't require changelog, please add NO_CHANGELOG=<reason> to the commit message. Checking commit fbc25aae FAIL SHA: fbc25aae SUBJECT: Update small submodule ERROR: Missing documentation request ('@TarantoolBot document' not found in the commit message). If this commit doesn't need to be documented, please add NO_DOC=<reason> to the commit message. ERROR: Changelog not found in changelog/unreleased. If this commit doesn't require changelog, please add NO_CHANGELOG=<reason> to the commit message. NO_DOC=ci NO_CHANGELOG=ci
-
- Jan 13, 2022
-
-
Alexander Turenko authored
Now `## bugfix/luajit` and `## bugfix/LuaJIT` entries will form one section.
-
Alexander Turenko authored
Now one can write either `## bugfix/luajit` or `## bugfix/LuaJIT`. The latter will NOT be transformed into `### Luajit` anymore. Both variants now give `### LuaJIT` section inside `## Bugs fixed` section. See `REDEFINITIONS` variable inside the script to understand how well known headers (such as `## <...>/LuaJIT`) are prettified. There is a problem with section grouping, when headers are written in lower/title/mixed case. It'll be resolved in a next commit.
-
Alexander Turenko authored
We run the script in CI as linter (see PR #6701), so it should handle lack of any changelog entries gracefully.
-
Alexander Turenko authored
Previously the script mistakely requires at least one feature and at least one bugfix. However it is quite natural to have only bugfixes in a bugfix release. Moreover, we added the script into CI as linter (see PR #6701), so it should work even when we just start filling release notes.
-
- Dec 06, 2021
-
-
Yaroslav Lobankov authored
This patch introduces the use of RWS (repository web service) instead of old update_repo.sh script for uploading packages to S3 repositories. RWS fully replaces facilities of update_repo.sh + provides new features like support of uploading ARM packages. Also, it is very simple to use, just do `curl` to the RWS endpoint with some params and that's it. Closes #6482
-
- Dec 03, 2021
-
-
Aleksandr Lyapunov authored
Sometimes to fix an issue we need to patch our submodule, update it in tarantool and then patch tarantool using changes in submodule. During development and review stages we have to create a branch (S) in submodule and a branch (T) in tarantool that references head of (S) branch. When the fix is merged to mater it's very simple to make a mistake: merge-and-push submodule's branch S and then tarantool's branch T. It sounds obvious, but that's wrong: tarantool's master should reference a commit from submodule's master, not a commit from temporary developer's branch. It's not hard to fix it but still a maintainer must always remember that problem. In order to simplify their life it was decided to create a script that is designed to check such thing before pushing tarantool to origin/master. Here is it, with simple usage: ./tools/check_push_master.sh && git push origin master
-
- Jul 19, 2021
-
-
VitaliyaIoffe authored
Make able to save packages in S3 buckets. Closes: #6074
-
- Jun 24, 2021
-
-
VitaliyaIoffe authored
Make able to save packages in S3 buckets. Closes: #5825
-
- Jun 18, 2021
-
-
VitaliyaIoffe authored
Make able to save packages in S3 buckets. Closes: #5824
-
- May 24, 2021
-
-
Sergey Bronnikov authored
Script used to run Jepsen tests uses Terraform to prepare test environment. When I made this script I had a wrong assumption about working directory used by Terraform. Due to this sometimes job with Jepsen tests failed on cleanup with message: ``` Error: Could not load plugin Plugin reinitialization required. Please run "terraform init". Plugins are external binaries that Terraform uses to access and manipulate resources. The configuration provided requires plugins which can't be located, don't satisfy the version constraints, or are otherwise incompatible. Terraform automatically discovers provider requirements from your configuration, including providers used in child modules. To see the requirements and constraints, run "terraform providers". Failed to instantiate provider "registry.terraform.io/terraform-providers/openstack" to obtain schema: unknown provider "registry.terraform.io/terraform-providers/openstack" ``` Terraform documentation describes how Terraform uses working directories [1] and there are at least to ways to resolve an issue. First one is using always one directory before running terraform subcommands. Second one is using option `-chdir` in all terraform commands [2]. 1. https://www.terraform.io/docs/cli/init/index.html 2. https://www.terraform.io/docs/cli/commands/index.html#switching-working-directory-with-chdir Closes #6089
-
- Apr 19, 2021
-
-
Igor Munkin authored
This patch introduces two scripts to ease crash artefacts collecting and loading for postmortem analysis: * tarabrt.sh - the tool collecting a tarball with the crash artefacts the right way: the coredump with the binary, all loaded shared libs, Tarantool version (this is a separate exercise to get it from the binary built with -O2). Besides, the tarball has a unified layout, so it can be easily processed with the second script: - /coredump - core dump file on the root level - /binary - tarantool executable on the root level - /version - plain text file on the root level with `tarantool --version` output - /checklist - plain text file on the root level with the list of the collected entities - /etc/os-release - the plain text file containing operating system identification data - all shared libraries used by the crashed instance - their layout respects the one on the host machine, so they can be easily loaded with the following gdb command: set sysroot $(realpath .) The script can be easily used either manually or via kernel.core_pattern variable. * gdb.sh - the auxiliary script originally written by @Totktonada, but needed to be adjusted to the crash artefacts layout every time. Since there is a unified layout, the original script is enhanced a bit to automatically load the coredump via gdb the right way. Closes #5569 Reviewed-by:
Alexander Turenko <alexander.turenko@tarantool.org> Reviewed-by:
Sergey Bronnikov <sergeyb@tarantool.org> Signed-off-by:
Igor Munkin <imun@tarantool.org>
-
- Apr 08, 2021
-
-
Alexander V. Tikhonov authored
Enabling ubuntu-20.04 hosts for packaging workflows found that DEB package Github Actions workflows do not need to install createrepo tool. Also found that createrepo is not ready for ubuntu-20.04 as described in (till ubuntu-21.04 where it is available as the new version of this tool named as 'createrepo_c' as DEB package): 3a7c2102 ('github-ci: ubuntu-20.04 misses createrepo package') To fix it added 'createrepo_c' build and installation from sources and changed in update_repo tool 'createrepo' tool to 'createrepo_c'. This patch is needed to use these workflows on self-hosted runners which run under ubuntu-20.04 by default for now. Also checking the patch on ubuntu-20.04 hosts got the following issue: Regenerated DEB file: pool/xenial/main/t/tarantool/tarantool-common_2.8.0.185.g4c3e0eb-1_all.deb <botocore.awsrequest.AWSRequest object at 0x7f7998a4ca90> <botocore.awsrequest.AWSRequest object at 0x7f627d965070> make: *** [.gitlab.mk:131: deploy] Error 255 Error: Process completed with exit code 2. Found that there is already issue exists in Github Actions on it [1]. Provided solution to setup AWS region in environment helped to workaround the issue [2]. Closes tarantool/tarantool-qa#110 Closes tarantool/tarantool-qa#111 [1]: https://github.com/aws/aws-cli/issues/5234 [2]: https://github.com/aws/aws-cli/issues/5234#issuecomment-635459464
-
- Apr 07, 2021
-
-
Alexander V. Tikhonov authored
Found that running package removement command from S3: ./tools/update_repo.sh -o=fedora -d=30 -b=s3://tarantool_repo/live/1.10 -r=tarantool-1.10.9.108 it searched to remove: Searching to remove: s3://tarantool_repo/live/1.10/fedora/30/SRPMS/Packages/tarantool-1.10.9.108-1.fedora30.src.rpm while it had to be: Searching to remove: s3://tarantool_repo/live/1.10/fedora/30/SRPMS/Packages/tarantool-1.10.9.108-1.fc30.src.rpm where 'fc30' had to be instead of 'fedora30'. This patch fixes it.
-
- Mar 15, 2021
-
-
Sergey Bronnikov authored
- install python3 on mac machines - run test-run without specifying path to python interpreter - get rid our own tarantool brew-tap that depends on Python 2 Part of #5652
-
- Feb 18, 2021
-
-
Alexander V. Tikhonov authored
Found issues and resolved: - Added '$PROJECT_BINARY_DIR/build/' path creation before use. - Set always ssh-agent restart before add new SSH key, because found that in some situations it may fail to add w/o it. - Found mistake in TF_VAR_id variable setup, inverted ${CI_JOB_ID} variable check for it. Also made improvements in script: - Added all needed checks for all externally set mandatory variables. - Added usage message with the list of mandatory and optional variables. - Added comments to all script steps. - Added step with checking nodes that they are reachable by SSH.
-
- Feb 12, 2021
-
- Jan 25, 2021
-
-
Alexander V. Tikhonov authored
Added jobs for testing and deploying Fedora 33 packages. Added Fedora 33 at update_repo tool to make able to save packages in S3 buckets. Closes #5502
-
- Dec 28, 2020
-
-
Alexander V. Tikhonov authored
Added package workflow to github actions. Set deployment of the packages for the master branch and tags. Closes #5638
-
- Dec 24, 2020
-
-
Alexander V. Tikhonov authored
It was added Fedora 32 gitlab-ci packaging job in commit: 507c47f7a829581cc53ba3c4bd6a5191d088cdf ("gitlab-ci: add packaging for Fedora 32") but also it had to be enabled in update_repo tool to make able to save packages in S3 buckets. Follows up #4966
-
- Nov 26, 2020
-
-
Alexander V. Tikhonov authored
Implemented ability to remove opensuse-leap OS packages.
-
Alexander V. Tikhonov authored
Updated help message on remove option.
-
Alexander V. Tikhonov authored
Added message which file to remove to be sure that the needed files were searched to remove.
-
Alexander V. Tikhonov authored
Found that Sources file destroys when module uploaded without sources. Also found that it could happen for Packages file on modules uploading without binaries. To fix it was added additional its downloading from S3 if in modules it was not updated and routine was not used.
-
- Oct 30, 2020
-
-
Sergey Bronnikov authored
To run Jepsen tests in different configurations we need to parametrize run script by options, so lein options and number of nodes passed with environment variables. By default script runs testing with Tarantool built from latest commit. Added these configurations: - single instance - single instance with enabled TXM - cluster with enabled Raft - cluster with enabled Raft and TXM Closes #5437
-
- Sep 18, 2020
-
-
Sergey Bronnikov authored
Main script that handle creation of set of virtual machines using Terraform, setup for remote connection, running Jepsen tests and teardown test environment. Part of #5277
-
- Aug 31, 2020
-
-
Alexander V. Tikhonov authored
On running update_repo tool with the given option to delete some RPMs need to remove all files found by this given pattern. The loop checking metadata deletes files, but only which were presented in it. However it is possible that some broken update left orphan files: they are present in the storage, but does not mentioned in the metadata.
-
Alexander V. Tikhonov authored
Implemented openSUSE packages build with testing for images: opensuse-leap:15.[0-2] Added %{sle_version} checks in Tarantool spec file according to https://en.opensuse.org/openSUSE:Packaging_for_Leap#RPM_Distro_Version_Macros Added opensuse-leap of 15.1 and 15.2 versions to Gitlab-CI packages building/deploing jobs. Closes #4562
-
- Jul 14, 2020
-
-
Alexander V. Tikhonov authored
Fixed unbound variables at packaging tool update_repo.sh. Closes #5114
-
- May 20, 2020
-
-
Alexander.V Tikhonov authored
Found that modules may have only sources packages w/o binaries packages. Script updated to be able to work with only binaries either sources RPM packages. The same fix was already done for DEB packages at commit 4527a4da. Close #4839
-
- May 01, 2020
-
-
Alexander V. Tikhonov authored
Found that in commit 'travis-ci/gitlab-ci: add Ubuntu Focal 20.04' forgot to add Ubuntu Focal to the list of the available Ubuntu distributions in the script for saving built packages at S3. Follow up #4863
-
- Apr 15, 2020
-
-
Alexander V. Tikhonov authored
Added ability to remove given in options package from S3. TO remove the needed package need to set '-r=<package name with version>' option, like: ./tools/update_repo.sh -o=<OS> -d=<DIST> -b=<S3 repo> \ -r=tarantool-2.2.2.0 it will remove all found appropriate source and binaries packages from the given S3 repository, also the meta files will be corrected there. Close #4839
-