Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Orchestrator-agent. Redesign and support for new seed methods #1

Open
wants to merge 66 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
66 commits
Select commit Hold shift + click to select a range
5d81e72
orchestrator-agent redesign. Build everything upon Agent struct and m…
Dec 27, 2019
c25be86
beautify logging
Dec 30, 2019
9cca0e1
add Mysql.Datadir, Mysql.LogFile to config
Dec 30, 2019
86b1732
dbagent package
Dec 30, 2019
c52f5b2
dbagent package. Add comments for methods\structs
Dec 30, 2019
bd74d6d
dbagent package. Functions to get database info
Dec 30, 2019
600ebe2
move lvm functions to lvm. Replace old api calls with single get-agen…
Jan 13, 2020
8424f61
AgentInfo use pointers instead of structures for LogicalVolume and Mount
Jan 13, 2020
7bf1b01
lvm and xtrabackup seed methods init
Jan 15, 2020
fddda71
seed methods initialization
Jan 16, 2020
4137819
move MySQLPort to AgentParams. Use POST for SubmitAgent
Jan 16, 2020
7c4f297
add new cmd wrappers with pipe and output redirection support
Feb 3, 2020
355a122
seedstages, api for seeding + mysqldump seed method
Feb 4, 2020
351de78
remove BackupOldDatadir config option
Feb 4, 2020
d3267dd
add supported engines to seedMethods. Refactor engines for databases
Feb 5, 2020
ca820d9
add backupToDatadir to seed methods
Feb 5, 2020
d740548
agent. support structure changes on orchestrator side
Feb 12, 2020
3ef1e47
agent. rename stages
Feb 13, 2020
e9c57af
remove replication-user and replicaiton-password from config
Feb 16, 2020
0ea37eb
remove old config. Change SeedStageStatus to be map[int]map[seed.Stag…
Feb 16, 2020
3e06e31
dbagent return full mysql version
Feb 17, 2020
199b115
add cancelled seedStage
Feb 17, 2020
89d36a3
additional information about current agent active seed. Do not run se…
Feb 17, 2020
fe45d6b
remove mysql version info from agent, as orchestrator already knows it
Feb 20, 2020
9196f55
add post seed cmd api"
Feb 20, 2020
70da89f
add support for custom-commands
Feb 21, 2020
68b290b
update ssl_test
Feb 21, 2020
e581420
switch all packages to use logrus
Feb 21, 2020
75f47b0
update vendor + add go mod
Feb 21, 2020
a9de778
remove old json config file
Feb 21, 2020
28f8b3a
support goreleaser for building packages, add systemd unit file, move…
Feb 21, 2020
fff73cd
orchestrator-agent service run under mysql user
Feb 28, 2020
22acd69
osagent lvm GetLogicalVolumes: check that returned tokens not empty
Feb 28, 2020
c774888
remove snapshot-mount-point. Use backup-dir instead
Feb 28, 2020
76e0c29
osagent: check that agent had perms function; remove unused functions
Feb 28, 2020
3e81a4d
seed mysqldump. Move backupfilename to struct
Feb 28, 2020
abb26cf
seedstage add seedID
Feb 28, 2020
d805206
ignore pytest tmp dirs
Feb 28, 2020
f5ebb49
add integration and functional tests
Feb 28, 2020
0af4596
integration tests + bugfix
Mar 2, 2020
14f284e
get rid of SeedStageStatus. Move current seed status to ActiveSeed
Mar 5, 2020
a4751c1
add addtional-opts config for mysqldump. Move ssl_test to separate pa…
Mar 5, 2020
78c0bc3
mysqldump support gtids + tests for gtids
Mar 5, 2020
6f14c97
add stderr in case of cmd errors
Mar 6, 2020
61327ff
add mydumper seed method
Mar 6, 2020
4742966
add xtrabackup seed method
Mar 9, 2020
3cf762f
add cloneplugin seed method
Mar 10, 2020
588be62
lvm seed method
Mar 11, 2020
0c751d9
clonePlugin additional config opts
Mar 12, 2020
974e716
beautify tests + bugfix
Mar 13, 2020
f993bca
README for tests
Mar 13, 2020
8e30bb5
update vagrant box version for mysql 5.7
Mar 13, 2020
3047d8d
delete unused files
Mar 16, 2020
dfc2987
integration tests + bugfix
Mar 17, 2020
7f14b26
return mysql error log as string
Mar 26, 2020
5eca1e5
rename seed-user and seed-password to user and password
Mar 26, 2020
8357c71
add system info and agent commands
Mar 28, 2020
b3db070
use custom script to build rpm packages as goreleaser do not add sha1…
Mar 30, 2020
1eb0a7d
goreleaser disable release creation
Mar 30, 2020
8751796
add http url prefix if not set in orchestrator url
Mar 31, 2020
40f8d60
additional configuration params. support for sudo-user and mysql star…
Apr 2, 2020
e9db8ba
add orchestrator-agent.lock file when using xtrabackup\lvm seed
Apr 4, 2020
00deb4c
use hostname from hostname -f command instead of os.hostname
Apr 7, 2020
f733128
add README
Apr 9, 2020
623ff08
add supported seed methods for README
Apr 9, 2020
10c49f5
fix bug with multiple gtids in GetMetadata
Apr 10, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,9 @@
.gopath/
.idea/
*.log
.vscode/
*DS_store
dist/
__pycache__
.pytest_cache
tests/integration/vagrant/shared/*.rpm
103 changes: 103 additions & 0 deletions .goreleaser.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
# Make sure to check the documentation at http://goreleaser.com
before:
hooks:
- go mod download
snapshot:
name_template: "2.0.0"
env_files:
github_token: ~/.github_token
checksum:
algorithm: sha256
release:
extra_files:
- glob: dist/*.rpm
draft: true
builds:
-
dir: go
main: ./cmd/orchestrator-agent/main.go
goos:
- linux
goarch:
- amd64
hooks:
post: ./scripts/rpm_build.sh -v {{ .Version }}
env:
- CGO_ENABLED=0
- GO111MODULE=on
archives:
-
id: systemd
replacements:
amd64: x86_64
files:
- conf/*
- etc/systemd/*
name_template: "{{ .ProjectName }}-{{ .Version }}.{{ .Arch }}"
-
id: sysv
replacements:
amd64: x86_64
files:
- conf/*
- etc/init.d/*
name_template: "{{ .ProjectName }}-sysv-{{ .Version }}.{{ .Arch }}"
nfpms:
-
id: systemd
vendor: GitHub
homepage: https://github.com/github/orchestrator-agent
maintainer: MaxFedotov <m.a.fedotov@gmail.com>
description: "orchestrator-agent: MySQL management agent"
file_name_template: "{{ .ProjectName }}-{{ .Version }}.{{ .Arch }}"
license: Apache 2.0
formats:
- deb
dependencies:
- socat
bindir: /usr/bin
empty_folders:
- /var/log/orchestrator-agent
files:
"etc/systemd/orchestrator-agent.service": "/etc/systemd/system/orchestrator-agent.service"
config_files:
"conf/orchestrator-agent.conf": "/etc/orchestrator-agent.conf"
scripts:
preinstall: "scripts/pre-install/pre-install.sh"
postinstall: "scripts/post-install/post-install.sh"
overrides:
rpm:
replacements:
amd64: x86_64
-
id: sysv
vendor: GitHub
homepage: https://github.com/github/orchestrator-agent
maintainer: MaxFedotov <m.a.fedotov@gmail.com>
description: "orchestrator-agent: MySQL management agent"
file_name_template: "{{ .ProjectName }}-sysv-{{ .Version }}.{{ .Arch }}"
license: Apache 2.0
formats:
- deb
dependencies:
- socat
bindir: /usr/bin
empty_folders:
- /var/log/orchestrator-agent
files:
"etc/init.d/orchestrator-agent.bash": "/etc/init.d/orchestrator-agent.bash"
config_files:
"conf/orchestrator-agent.conf": "/etc/orchestrator-agent.conf"
scripts:
preinstall: "scripts/pre-install/pre-install.sh"
postinstall: "scripts/post-install/post-install.sh"
overrides:
rpm:
replacements:
amd64: x86_64
changelog:
sort: asc
filters:
exclude:
- '^docs:'
- '^test:'
24 changes: 0 additions & 24 deletions Dockerfile

This file was deleted.

11 changes: 0 additions & 11 deletions Dockerfile.test

This file was deleted.

345 changes: 217 additions & 128 deletions README.md

Large diffs are not rendered by default.

1 change: 0 additions & 1 deletion RELEASE_VERSION

This file was deleted.

23 changes: 0 additions & 23 deletions Vagrantfile

This file was deleted.

204 changes: 0 additions & 204 deletions build.sh

This file was deleted.

Loading