Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • 12:55
    Drumor synchronize #449
  • 12:55

    Drumor on reset_submission_state

    allows context collapsing - iss… get_text + replacing of button Merge pull request #451 from UC… and 7 more (compare)

  • 06:16

    anthonygego on fix_undefined

    (compare)

  • 06:16

    anthonygego on master

    Fix undefined variables (#432) … (compare)

  • 06:16
    anthonygego closed #432
  • 06:13
    anthonygego commented #449
  • 06:13
    anthonygego commented #449
  • Oct 17 10:38

    anthonygego on course_yaml_db

    Dirty remove of course_factory Dirty remove of task_factory Update webdav for wsgidav >= 3.0 and 7 more (compare)

  • Oct 17 09:29

    anthonygego on master

    i18n: add missing language arg … (compare)

  • Oct 16 22:04
    INGIbot synchronize #446
  • Oct 16 14:02

    anthonygego on master

    Cut long chains in task debug i… Merge pull request #452 from ja… (compare)

  • Oct 16 14:02
    anthonygego closed #452
  • Oct 16 13:07

    anthonygego on master

    Fix i18n issues (compare)

  • Oct 15 13:04
    INGIbot synchronize #446
  • Oct 15 07:24
    anthonygego transferred #453
  • Oct 15 07:09
    pschaus opened #453
  • Oct 14 13:54
    GuillaumeDerval commented #452
  • Oct 14 13:54
    GuillaumeDerval review_requested #452
  • Oct 14 13:54
    GuillaumeDerval commented #452
  • Oct 14 13:52
    jadinm opened #452
James Robb
@jamesrobb
On an unrelated note too, it seems that the gitter link is no longer on the front page of the inginious site, nor on the github page. I think those looking for support might have a hard time finding this page.
Anthony Gégo
@anthonygego

@jamesrobb Probably by the end of the month. The new link to the ACS is /auth/callback/<auth_method_id>. Each auth plugin now require an id field in the configuration.yaml file. The base container files are available on Github in the base-containers folder. You can build them by using docker build -t ingi/inginious-c-base . in the base folder and so one for other containers.

The new inginious.org site is still under work. I'm putting back some additional info as soon as I can.

Tom Bell
@tstrokes
Can problems of type: code and type: multiple_choice be used in the same task?
James Robb
@jamesrobb

@anthonygego cool, I might just wait to install (again) when you actually release. We had an iffy debut at my university with inginious when I tried to do postgres containers (so each student would have an isolated instance of postgres to code against). Not sure if it was my setup or what, but the file system on my VM would fill up entirely with the docker storage layer files until there was no space left, and often the inginious messaging system for running containers would stop working.

I'm optimistic with a fresh VM and a new version I can do some proper testing and hopefully figure out what went wrong. We really like the inginious and are eager to have our students using it.

Anthony Gégo
@anthonygego
@tstrokes Yes, but you'll have to parse the multiple choice input inside the run script. It can be accessed as any other code problem.
Anthony Gégo
@anthonygego
@jamesrobb Was it the INGInious run containers that filled the docker storage ?
James Robb
@jamesrobb
@anthonygego This is a few months ago, so my memory is a bit hazy, but that sounds right Any idea why that would have happened?
James Robb
@jamesrobb
@anthonygego sorry to pester you again about the same thing, but it sounded like you might have some insight as to what went wrong with my installation. The /var/lib/docker/devicemapper/ directory would continue to swell in size until all disk space was consumed. Not sure why, but it seems like the disk space that was occupied by a container while it was running wasn't freed up after it was shut down.
Anthony Gégo
@anthonygego
It is possible that a crashed container would not delete for some reasons. Maybe the docker logs would help to identify the cause. By the way, you might have important performance issues using devicemapper that more often lead to such unexpected beahviours on a mounted partition (default loopback-lvm configuration), which is not a recommended setup by Docker. I'd recommend direct-lvm or overlay.
James Robb
@jamesrobb
Hmm, I can't honestly say I know what that means, but I know someone that does. I'll consult with them and see what I can figure out.
Hows the next release coming along? I've been delaying working on my schools installation until it come sout
Anthony Gégo
@anthonygego
@jamesrobb By the end of the month. Actually you can already clone and use the master code if you plan to do a clean install. It's currently receiving bugfixes and updated documentation is coming in the next days.
Benoît Legat
@blegat
The assignement of this year has the same id as last year so students submissions of last year are mixed with those of this year
What's the recommended method to deal with this ?
Anthony Gégo
@anthonygego
@blegat If you did not archive the course before there is unfortunately no other way to deal with this than removing all submissions done last year from the database
Benoît Legat
@blegat
Ok thanks :)
nlarranagac
@larranaga

Hi,

We are currently working on the deployment of a fork from INGInious at our University. At first we had the idea to use docker to deploy the webapp along with a bunch other microservices (a linter, and a visualizer for the code), however we have had a few issues in the process, namely how to put INGInious-webapp inside a container, has anyone tried something similar? Now we decided to have INGInious-webapp inside a lighttpd server, so we would like to know if you have some sort of a deployment script or some kind of automation in the process of deployment.

Ohad Perry
@ohadperry9_twitter
Hi, We are currently working on the deployment of a fork from INGInious . In our production environment, we noticed errors in apache server that caused the app to restart.
Error in `/usr/sbin/httpd': double free or corruption (!prev): 0x00007f28dc67a6e0
======= Backtrace: =========
/lib64/libc.so.6(+0x7c503)[0x7f28d9746503]
/usr/lib64/libpython3.5m.so.1.0(PyThreadState_DeleteCurrent+0x40)[0x7f28cd50e420]
/usr/lib64/libpython3.5m.so.1.0(+0x165075)[0x7f28cd529075]
/lib64/libpthread.so.0(+0x7dc5)[0x7f28d9c96dc5]
/lib64/libc.so.6(clone+0x6d)[0x7f28d97c173d]
i've searched this group and didn't find the exact error here.
it started last friday we upgraded the task tests (not the inginious code). We also had a disk space error at that day. We solved by increasing the disk space. We don't know if this is related.
The architecture is composed of 2 servers. one is with the frontend and backend and the other with the agents
@anthonygego how do you recommend debugging this
?
Ohad Perry
@ohadperry9_twitter
Is there a way to log inginious logs to rotating files ?
Ohad Perry
@ohadperry9_twitter
@anthonygego any open source plugin to do that? currently the logs are wrting to stdout if i'm not mistaken
Anthony Gégo
@anthonygego
@larranaga I'll probably push some kind of a image or deploy script on AWS some day once it will be 100% automatic but this will be for the version we're maintaining, but currently we do not maintain such scripts in public repos.
Anthony Gégo
@anthonygego
@ohadperry9_twitter well it seems it comes from Apache and its wsgi plugin (as the error comes from httpd process). I'd first try to update them, as well as Python devel packages.
Ohad Perry
@ohadperry9_twitter
update apache?
I already updated the mod_wsgi pip by doing pip uninstall and install again
also, what do you mean by "Python devel packages"?
Matthias Möller
@mmoelle1
Hi there! I am new to INGInious (and also gitter). I am working on setting up my own INGInious server now having problems with the SMTP configuration. Sendmail is configured so that, as a regular user 'myuser', I can send mails from the terminal, e.g., 'mail someone@gmail.com'. I tried to configure INGInious to use my local sendmail daemon but I receive the following sendmail error: 'Mar 15 09:44:26 inginious sendmail[7125]: w2F8iQZq007125: localhost [127.0.0.1] did not issue MAIL/EXPN/VRFY/ETRN during connection to MTA'. Any help is appreciated.
Andres Mauricio Rondon Patiño
@amrondonp
Hello, Have you guys added the support for extending the problem types via plugins?
nlarranagac
@larranaga
Hi i just deployed INGInious using lighttpd, however i am getting a connection refused message over and over again, I don't know how to check what I'm doing wrong, I'd really appreciate some help
Matthias Möller
@mmoelle1
@larranaga Not sure if that solves your problem but I had to change server.use-ipv6 = "enable"to server.use-ipv6="disable" in the file /etc/lighttpd/lighttpd.conf under CentOS7.
nlarranagac
@larranaga

@mmoelle1 Thanks a lot, it worked. However now I'm facing another issue, apparently inginious-webapp isn't running, at first it was because it didn't have permission to mongo, I found out it was because of selinux and worked around it like [so]{https://stackoverflow.com/questions/44537205/apache-httpd-not-able-to-access-local-mongodb-permission-denied}. Unfortunately I face now another error (which I think it's the one the post refers to), the webapp doesn't have permissions to connect to the docker daemon. I don't know how to solve it, maybe it's better to use an apache server instead? this is the log from the service.

Mar 16 16:44:18 vultr.guest lighttpd[1536]: return self.get(url, **self._set_request_timeout(kwargs))
Mar 16 16:44:18 vultr.guest lighttpd[1536]: File "/usr/lib/python3.5/site-packages/requests/sessions.py", line 521, in get
Mar 16 16:44:18 vultr.guest lighttpd[1536]: return self.request('GET', url, **kwargs)
Mar 16 16:44:18 vultr.guest lighttpd[1536]: File "/usr/lib/python3.5/site-packages/requests/sessions.py", line 508, in request
Mar 16 16:44:18 vultr.guest lighttpd[1536]: resp = self.send(prep, **send_kwargs)
Mar 16 16:44:18 vultr.guest lighttpd[1536]: File "/usr/lib/python3.5/site-packages/requests/sessions.py", line 618, in send
Mar 16 16:44:18 vultr.guest lighttpd[1536]: r = adapter.send(request, **kwargs)
Mar 16 16:44:18 vultr.guest lighttpd[1536]: File "/usr/lib/python3.5/site-packages/requests/adapters.py", line 490, in send
Mar 16 16:44:18 vultr.guest lighttpd[1536]: raise ConnectionError(err, request=request)
Mar 16 16:44:18 vultr.guest lighttpd[1536]: requests.exceptions.ConnectionError: ('Connection aborted.', PermissionError(13, 'Permission denied'))

I deeply appreciate any help anyone can provide.

Anthony Gégo
@anthonygego
@ohadperry9_twitter the mod_wsgi is compiled during the pip install and rely on the devel packages (python and apache I'd say). As the error triggered comes from C code, I'd rather ensure that everything is updated and that mod_wsgi is reinstalled using the latest devel packages.
@amrondonp Yes, but some refactor is still in progress to improve the problems type interface. You can already use it but expect that it might be significantly modified in the coming days.
Anthony Gégo
@anthonygego
@larranaga you need to add the lighttpd user to the docker group
Matthias Möller
@mmoelle1
Hi, I still have problems with configuring the smtp server in configuration.yaml. The locally running sendmail gives the error message Mar 15 09:44:26 inginious sendmail[7125]: w2F8iQZq007125: localhost [127.0.0.1] did not issue MAIL/EXPN/VRFY/ETRN during connection to MTA. Does someone have a working smtp configuration, e.g., by sending emails via Google smtp?
Matthias Möller
@mmoelle1
Hi, I try to setup a task file for a C++ assignment. Pasting the student's input (std::cout << "Hello World!" << std::endl;) into a template C++ code seems to work. However, I cannot get the output back? Is this the right command in the run file: output=$(run_student g++ student/studentcode.cpp -o student/studentcode.exe && ./student/studentcode.exe)?
Andres Mauricio Rondon Patiño
@amrondonp
Hello guys, we have been working on extending your platform for almost a year. We have implemented several plugins for that version of the platform (1 year old aprox). However, we have seen that you have made a great improvements in the platform and added new cool features. So we plan to adapt our plugins to the new version of the platform. The problem is that we are not sure of your future release plans, we'd like to be able to get an insight on your roadmap so that we can decide which version of the platform to move to. Any recommendation for this kind of work?
Anthony Gégo
@anthonygego
@amrondonp It's currently very difficult to say what the roadmap is. Actually, the INGInious development is currently funded in order to improve its industrial/commercial appeal, so it's sort of a request-driven development based on the feedback we receive from potential industrial users and the department users. Our "roadmap" currently looks like a bullet list with nice-to-have features.
As we are generally 1 and at most 2 working on the code, it's often easier not to deal with the administrative work and just do the minimum work for others to be able to use the platform.
However, we are more and more interested in making INGInious a community driven project. We'll soon set up some tools in order to make discussions easier (gitter for instance only has 1 channel per project, something like slack could be better). We'd really appreciate hearing from you the changes you've done and discuss how these ones can be included into our reflexion to facilitate their integration without a fork, and potentially collaborate more intimately in the future. I'll keep you informed.
I'll do my best to upload asap a short-term roadmap with all the planned devs and set up tools to improve interaction with the community.
To answer the initial question, we planned to tag the current master branch v0.5 once the subproblem APIs are stable enough (there are actually still some parts of the code that need to be extracted from the main js for instance) and the docs are updated, so you'll be able to use it as a basis for a fork. This was already planned last month but we've been delayed by other priorities...
Anthony Gégo
@anthonygego
@mmoelle1 sorry for the delay. Actually the && is a shell syntax so I'm wondering if this will work as expected. If the && is passed as an argument to run_student, this will probably fail. I'd rather simply make the compilation outside of run_student as this is not supposed to execute malicious code, and then simply run your binary using run_student.
Benoît Legat
@blegat
@anthonygego What is the course id needed to archive a course ?
For Scientific Computing, I try assignment2 but it says "Wrong course id"
James Robb
@jamesrobb
@anthonygego you mentioned in Feb that the next releast of ING would be coming out by the end of Feb. I was just checking in on the github page and noticed the latest release is still 0.4.0. Any update on when the next release will be?
Matthias Möller
@mmoelle1
@anthonygego anthonygego
@anthonygego
Thanks for you advice. How can I compile and run in the same docker image