Closed hugsy closed 6 years ago
Because it's poorly suited for testing gef on multiple architecture and uses super old packages. Not sure I see the difference between CircleCI and TravisCI, can you test on non x86 architectures ? Or at least deploy easily VMs that do?
If you can put onto https://hub.docker.com a Docker image that houses the environment that you want then both Travis CI and Circle CI can mount it and run the tests inside of it. Pre-built images can have ready-to-run GDB linked into the Python of your pleasure and they will load in seconds. Circle CI might be a bit faster and more modern than Travis CI but both are approx equally capable.
I don't see pros for changing from Travis-CI to Circle-CI to make tests easier (looks 100% the same). And I don't see how Docker would help in any way. Can you clarify that?
Docker can help because we can:
I should have been clearer: how would Docker help for testing on non-x86 arch? Which is the whole point of moving away from Travis-CI in the 1st place.
Would running VMware inside of a Docker container help to simulate non-x86 environments?
AFAIK VMware doesn't do full virtualization, so no. Some examples would be Qemu or Bochs. I've got the Qemu images that I'm already using to test new releases, but I do that manually, and it's very tedious (which explans the will to have it tested via a CI service provider).
I am a fan of circle, but probably just because I've used it before.
One issue is that they run everything with docker, and I am not sure if they run them privileged. Without that, ptrace
won't work.
Did you test it for gef ?
I pushed a config to dev, and to master on my fork, which is setup for circle. See https://circleci.com/gh/Grazfather/gef/21. The failure is because of a real failure!
Could you please try this out and see if you like it? you'd have to merge this into master, and you'd have to setup a circleci integration/webhook.
Can be closed with #324
Done!
Eight undefined names in ./scripts/ida_gef.py
flake8 testing of https://github.com/hugsy/gef on Python 3.7.0
$ flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics
./scripts/ida_gef.py:149:35: F821 undefined name 'CIC_ITEM'
return idc.SetColor(addr, CIC_ITEM, color)
^
./scripts/ida_gef.py:170:54: F821 undefined name 'Structs'
for (struct_idx, struct_sid, struct_name) in Structs():
^
./scripts/ida_gef.py:184:41: F821 undefined name 'StructMembers'
res = {struct_name: [x for x in StructMembers(self.GetStructByName(struct_name))]}
^
./scripts/ida_gef.py:195:18: F821 undefined name 'Structs'
for s in Structs():
^
./scripts/ida_gef.py:208:48: F821 undefined name 'CIC_ITEM'
idc.SetColor(_current_instruction, CIC_ITEM, _current_instruction_color)
^
./scripts/ida_gef.py:213:38: F821 undefined name 'GetColor'
_current_instruction_color = GetColor(_current_instruction, CIC_ITEM)
^
./scripts/ida_gef.py:213:69: F821 undefined name 'CIC_ITEM'
_current_instruction_color = GetColor(_current_instruction, CIC_ITEM)
^
./scripts/ida_gef.py:214:44: F821 undefined name 'CIC_ITEM'
idc.SetColor(_current_instruction, CIC_ITEM, 0x00ff00)
^
8 F821 undefined name 'CIC_ITEM'
8
Possible alternatives:
https://wercker.com(down it seems)