Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Oct 22 12:51

    anthonygego on audiences

    Remove classroom groups (compare)

  • Oct 22 09:56

    anthonygego on audiences

    Removed remaining aggregation c… (compare)

  • Oct 22 09:40

    anthonygego on audiences

    Remove the need for a default c… Remove unnecessary file Duplicate classrooms/teams files and 1 more (compare)

  • Oct 22 09:33

    anthonygego on audiences

    Made classrooms and teams indep… (compare)

  • Oct 21 14:39
    Drumor synchronize #454
  • Oct 21 14:39

    Drumor on make_multiple_tasks_inaccessible

    trying to resolve #433 - Allow … (compare)

  • Oct 21 14:36
    Drumor review_requested #454
  • Oct 21 14:34
    Drumor opened #454
  • Oct 21 14:34

    Drumor on make_multiple_tasks_inaccessible

    trying to resolve #433 - Allow … (compare)

  • Oct 21 11:46

    anthonygego on audiences

    Remove unnecessary file Duplicate classrooms/teams files (compare)

  • Oct 21 11:10

    anthonygego on audiences

    Remove the need for a default c… (compare)

  • Oct 21 08:02
    Drumor commented #449
  • Oct 21 08:01
    Drumor review_requested #449
  • Oct 21 07:59
    Drumor synchronize #449
  • Oct 21 07:59

    Drumor on reset_submission_state

    adaptation after review (compare)

  • Oct 18 12:55
    Drumor synchronize #449
  • Oct 18 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)

  • Oct 18 06:16

    anthonygego on fix_undefined

    (compare)

  • Oct 18 06:16

    anthonygego on master

    Fix undefined variables (#432) … (compare)

  • Oct 18 06:16
    anthonygego closed #432
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
James Robb
@jamesrobb

@anthonygego I am trying to setup INGINious inside a docker container. I can figure out how to allow access to the host docker daemon, but I am having some trouble with routing web traffic. A friend of mine recommend gunicorn, but getting gunicorn to serve INGInious properly has proven to be a hassle. INGInious seems to want to server its own content. Gunicorn will listen on port 8000, but for some reason (even after removing all of the main code in the 0.4 relase) INGInious runs its own webserver on 8080 within the container. Any advice on how to make this process work?

My ideal situation is that nginx will route traffic to the gunicorn server in my container, which acts as a reverse proxy for INGInious. If you feel this isn't an optimal setup,I am definitely up for suggestions.I am handing off the INGInious project to someone else at my university in a few months, and I want the setup/deployment strategy to be easy to understand and most importantly scriptable.

Guillaume Derval
@GuillaumeDerval
@jamesrobb for the next release, the response is "ASAP". We already have PR that are waiting to be merged into 0.6dev (such as webdav), but there are still a few TODOs for 0.5.
Guillaume Derval
@GuillaumeDerval

@jamesrobb there is a problem with the detection of FCGI in the code. I'll open an issue. What you can do in the meantime is to copy the content of the file inginious-webapp.py into another file, say wsgi.py, and remove the lines

if 'SERVER_SOFTWARE' in os.environ:  # cgi
    os.environ['FCGI_FORCE_CGI'] = 'Y'

if 'PHP_FCGI_CHILDREN' in os.environ or 'SERVER_SOFTWARE' in os.environ:  # lighttpd fastcgi
    print(os.environ)
    import flup.server.fcgi as flups
    flups.WSGIServer(application, multiplexed=True, bindAddress=None, debug=False).run()

(which handle the fastcgi detection), then call gunicorn wsgi:application.

James Robb
@jamesrobb
@GuillaumeDerval this works perfectly. Thanks for the help! Looking forward to the next release too.
James Robb
@jamesrobb

I'd like to automate some testing for my deployment of INGInious. In particular, we had the system crash last year during a class where lots of students were using the system at the same time .

I can pull the submissions out of the mongo database, but I am wondering if there is some sort of API call (or something similar) that I can make against INGInious to run these submissions. My idea is to use some testing software to keep asking INGInious to run these various submissions to see where and how things broke down.

Any idea @GuillaumeDerval how I can do this?

James Robb
@jamesrobb
@anthonygego any idea how I might do this?
Benoît Legat
@blegat
I have got the error
ssh_exchange_identification: read: Connection reset by peer
when trying to do the ssh debugging